Modification of content representation by a brand engine in a social network

ABSTRACT

A brand engine receives a request from a user device operated by a first user to display user information of a second user. User information of the first user is mapped to at least the user information of the second user by the brand engine. The mapping may map the user information of the first user to user information of further users in a social network. The mapping may map of any combination of spatial, temporal, social, and topical data related to the users. A modified representation of received content is generated by the brand engine based on the mapping. The modified representation is transmitted to the user device. The user device displays the modified representation for the first user. The modified representation of the received content may include any combination of filtered and/or sorted content items, recommended content items, and/or modified content items.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to brand advertising and display ofcontent in an online social context.

2. Background Art

Traditionally, a brand is associated with a product or service which hasgained or has been provided with an identity. A purpose of a brand is todifferentiate itself from competitors. A brand may be represented by abundle of tangible (e.g., functional product and/or servicecharacteristics) and/or intangible (e.g., emotional and/or symbolic)meanings that add value to the brand. A brand may be associated with anytype of product and service. A few well known example brands includeLegos™ (a toy brand), BMW™ (an automobile manufacturer brand), andMerrill Lynch™ (a financial management and advisory company brand).Brands may also be associated with entities that are less tangible,including personalities (e.g., Lindsey Lohan, Michael Jordan, Oprah),movie franchises (e.g., Star Wars™, Harry Potter), television franchises(e.g., the television shows “Lost” and “The Office”), and sportsfranchises (e.g., The Dallas Cowboys, The New York Yankees).

Advertising is a form of communication used to inform potentialcustomers about products and services, and how to obtain and/or usethem. Advertisers are constantly searching for improved ways ofconnecting with potential customers. In recent years, online advertisinghas become more prevalent. Online advertising is a form of advertisingthat uses the Internet and World Wide Web in order to deliver marketingmessages and attract customers. Typical techniques for onlineadvertising include the posting of “banner ads” on webpages, providingcontextual ads on search engine results pages, and email marketing,which may include the sending of email spam.

Social networking services exist on the World Wide Web that are intendedto build online social networks for communities of people having commoninterests and/or activities, or who are interested in exploring theinterests and activities of others. Such services provide various waysfor users to interact, including blogging, discussion groups, email,file sharing, instant messaging, online chat, video, voice chat, etc.Social networking services such as MySpace.com™ and Facebook™ enableusers to create self-description pages (also referred to as a “profilepage”), and enable the users to link their pages with pages of friends.

Advertisers are targeting social networking services as a relatively newadvertising frontier. For example, advertisers may provide banner adsthat appear when users of MySpace.com™ of Facebook™ view their ownprofile pages, when they view profile pages of their linked friends,and/or when they view other pages of these websites. Furthermore,Facebook™ includes applications that enable further types ofadvertising. For example, Facebook™ includes an application called“HotLists,” which enables users to select and list topics of interest intheir profile page. A selected topic appears as a graphical icon (a“Stylepix”) in the user's profile page. A user may click on the topicicon to open a webpage that may provide further information regardingthe topic.

The advertising provided by the HotLists application is enhanced by theusers of Facebook™. For instance, a user may notice a topic icon in afriend's profile page that represents a topic of interest to the user.The user may add the topic icon to the user's own profile page if theuser desires to express his/her interest in the topic. In this manner,information regarding the topic may be spread between users withoutneeding direct action from the advertiser.

Such advertising schemes provided by social networking services havedisadvantages, however. For instance, the topic icons of the HotListsapplication in Facebook™ are presented with little to no variability.What is desired is an online advertising technique useable in a socialnetworking environment that takes advantage of the social network toprovide more relevant, interesting, and variable advertising to thesocial network participants.

BRIEF SUMMARY OF THE INVENTION

Brand information is enabled to be associated with users in a socialnetwork in the form of shareable brand objects. Each user in the socialnetwork may select one or more brand objects of interest to the user.The brand objects selected by a user form a brand profile of the user,which may be displayed along with other information regarding the user.For example, the brand profile may be displayed on a user profile pagefor the user. Other users in the social network may view the userprofile page of the user to view the selected brand objects, and to copyany of brand objects being viewed for inclusion in their own respectivebrand profiles.

Embodiments of the present invention enable modified content to begenerated based on context related to brand objects. For instance, in afirst aspect of the present invention, a request may be received from auser device operated by a first user to display user information of asecond user. User information of the first user is mapped to at leastthe user information of the second user. The mapping may further map theuser information of the first user to the user information of furtherusers in the social network. The mapping may include a mapping of anycombination of spatial, temporal, social, and topical data related tothe users.

A modified representation of received content (e.g., content receivedfrom a search engine, an advertising engine, a news engine, or othersource) is generated based on the mapping. The received content mayinclude one or more content items. The modified representation of thereceived content is transmitted to the user device. The user devicedisplays the modified representation of the received content for thefirst user. The modified representation of the received content mayinclude any combination of filtered and/or sorted content items,recommended content items, and/or modified content items. Revenue may beenabled to be generated based on display of the modified representationof the received content.

In an example of the mapping, user data may be retrieved from the userinformation of each of the first user, second user, and any furtherusers (optionally). The user data includes one or more of spatial,temporal, social, or topical data associated with each user. Theretrieved user data may be graphed.

One or more relationships between brand profiles of the first user andthe plurality of users may be determined from the graphing. Probabilityscores corresponding to the determined one or more relationships may bedetermined. The modified representation of the received content may begenerated based on the probability scores.

In a further aspect, a brand engine may include a mapping module and acontent modifier module. The mapping module may be configured to receivea request from a user device operated by a first user to display userinformation of a second user. The first user has associated userinformation that includes a first brand profile. The first brand profileincludes a first plurality of brand objects. The user information of thesecond user including a second brand profile that includes a secondplurality of brand objects. The mapping module is configured to map theuser information of the first user to at least the user information ofthe second user to generate a map. The content modifier module isconfigured to generate a modified representation of the received contentbased at least on the generated map. The brand engine is configured totransmit the modified representation of the received content to the userdevice to enable the modified representation to be displayed by the userdevice.

These and other objects, advantages and features will become readilyapparent in view of the following detailed description of the invention.Note that the Summary and Abstract sections may set forth one or more,but not all exemplary embodiments of the present invention ascontemplated by the inventor(s).

BRIEF DESCRIPTION OF THE DRAWINGS/FIGURES

The accompanying drawings, which are incorporated herein and form a partof the specification, illustrate the present invention and, togetherwith the description, further serve to explain the principles of theinvention and to enable a person skilled in the pertinent art to makeand use the invention.

FIG. 1 shows a block diagram of a brand marketing and social networksystem, according to an example embodiment of the present invention.

FIG. 2 shows a block diagram of an example brand database, according toan embodiment of the present invention.

FIG. 3 shows a block diagram of an example brand engine, according to anembodiment of the present invention.

FIG. 4 shows a block diagram of an example of the brand marketing andsocial network system shown in FIG. 1, according to an embodiment of thepresent invention.

FIG. 5 shows a block diagram of example user information, according toan embodiment of the present invention.

FIG. 6 shows a block diagram of an example user profile page, accordingto an embodiment of the present invention.

FIG. 7 shows a block diagram of a brand page for a user, according to anexample embodiment of the present invention.

FIG. 8 shows a block diagram of an example brand page, according to anembodiment of the present invention.

FIGS. 9 and 10 each illustrate a type of interaction between two nodesin a network.

FIGS. 11 and 12 each illustrate interactions between three nodes in anetwork.

FIG. 13 shows example interactions between brands and users in anexample social network, according to an embodiment of the presentinvention.

FIG. 14 shows a flowchart for displaying brand information, according toan example embodiment of the present invention.

FIG. 15 shows a block diagram of an example publication manager,according to an embodiment of the present invention.

FIG. 16 shows a flowchart for mapping user data, according to an exampleembodiment of the present invention.

FIG. 17 shows example brand profiles for first and second users,according to an embodiment of the present invention.

FIG. 18 shows a block diagram of a display of a user device thatdisplays a filtered brand profile, according to an example embodiment ofthe present invention.

FIG. 19 shows a block diagram of a display of a user device thatdisplays a sorted brand profile, according to an embodiment of thepresent invention.

FIG. 20 shows a block diagram of a display of a user device thatdisplays a recommended brand object, according to an embodiment of thepresent invention.

FIG. 21 shows a block diagram of a display of a user device thatdisplays a modified brand object, according to an embodiment of thepresent invention.

FIG. 22 shows a flowchart for generating a modified brand profile,according to an example embodiment of the present invention.

FIG. 23 shows a block diagram of a brand marketing and social networksystem, according to an example embodiment of the present invention.

FIG. 24 shows a block diagram of a content engine, according to anexample embodiment.

FIG. 25 shows a block diagram of a brand marketing and social networksystem, according to an example embodiment of the present invention.

FIG. 26 shows a block diagram of a display of a user device thatdisplays a brand profile and content, according to an embodiment of thepresent invention.

FIG. 27 shows a flowchart for providing content, according to an exampleembodiment of the present invention.

FIG. 28 shows a brand advertising and social network system, accordingto an example embodiment of the present invention.

FIG. 29 shows a block diagram of a publication manager, according to anembodiment of the present invention.

FIG. 30 shows a block diagram of a display of a user device thatdisplays filtered content items, according to an example embodiment ofthe present invention.

FIG. 31 shows a block diagram of a display of a user device thatdisplays sorted content items, according to an embodiment of the presentinvention.

FIG. 32 shows a block diagram of a display of a user device thatdisplays a recommended content item, according to an embodiment of thepresent invention.

FIG. 33 shows a block diagram of a display of a user device thatdisplays modified content items, according to an embodiment of thepresent invention.

FIG. 34 shows a flowchart for generating a modified content section,according to an example embodiment of the present invention.

FIG. 35 shows a block diagram of an example computer system in whichembodiments of the present invention may be implemented.

The present invention will now be described with reference to theaccompanying drawings. In the drawings, like reference numbers indicateidentical or functionally similar elements. Additionally, the left-mostdigit(s) of a reference number identifies the drawing in which thereference number first appears.

DETAILED DESCRIPTION OF THE INVENTION I. Introduction

The present specification discloses one or more embodiments thatincorporate the features of the invention. The disclosed embodiment(s)merely exemplify the invention. The scope of the invention is notlimited to the disclosed embodiment(s). The invention is defined by theclaims appended hereto.

References in the specification to “one embodiment,” “an embodiment,”“an example embodiment,” etc., indicate that the embodiment describedmay include a particular feature, structure, or characteristic, butevery embodiment may not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases are not necessarilyreferring to the same embodiment. Further, when a particular feature,structure, or characteristic is described in connection with anembodiment, it is submitted that it is within the knowledge of oneskilled in the art to effect such feature, structure, or characteristicin connection with other embodiments whether or not explicitlydescribed.

II. Brand Engine and Social Network Embodiments

Embodiments of the present invention enable brands to be promoted in anonline social network environment. Such embodiments leverage socialnetworks to provide more relevant and interesting advertising to thesocial network participants. FIG. 1 shows a block diagram of a brandmarketing and social network system 100, according to an exampleembodiment of the present invention. Brand marketing and social networksystem 100 enables users and brands to interact. As shown in FIG. 1,brand marketing and social network system 100 includes a social network102, a brand engine 104, and a brand collection 106. Brand engine 104 iscommunicatively coupled to social network 102 by a first communicationinterface 102, and brand engine 104 is communicatively coupled to brandcollection 106 by a second communication interface 116. Each of theelements of system 100 is described in detail below. Further descriptionof the elements of system 100 is provided in subsequent sections.

Social network 102 is an online social network or a combination ofsocial networks, that includes a community of users 108 (networkparticipating persons). First-nth users 108 a-108 n are shown in socialnetwork 102 in FIG. 1. Social network 102 may include any number ofusers 108, including hundreds, thousands, or even millions of user 108.Users 108 may interact with each other in social network 102 usingcorresponding electronic devices (e.g., computers, cell phones, etc.),as described in detail further below. Social network 102 operates withina communications network, such as a local area network (LAN), a widearea network (WAN), or a combination of networks, such as the Internet.For example, social network 102 may be based in the World Wide Web. Thecommunication network enables communications between users 108. Socialnetwork 102 may enable one or more ways for users to interact, includingenabling communications between users 108 through one or more ofblogging, discussion groups, email, file sharing, instant messaging,online chat, video, voice chat, and/or other user communicationmechanisms.

As shown in FIG. 1, each user 108 has corresponding user information110. User information 110 may include any information about therespective user 108 that the user may desire to make accessible to otherusers 108 of social network 102. For example, user information 110 mayinclude a name and/or an alias, a representative image (e.g., aphotographic image and/or avatar), contact information, statusinformation, a list of interests, and/or other information regarding therespective user 108. User information 110 may be configured to support aself-description page (also referred to as a “user profile page”) foreach user 108, which may be displayed as a web page or in other form. Inan embodiment, user information 110 may include a list of friends of theuser. For example, user 108 a may include users 108 b and 108 c in afriends list maintained in user information 110 a of user 108 a. In anembodiment, social network 102 may enable each user 108 to link theirprofile pages with the profile pages of their listed friends.

Brand collection 106 is a database or any other data structure thatcontains information representative of one or more brands. As shown inFIG. 1, brand engine 104 interfaces brand collection 106 with socialnetwork 102. In an embodiment, brand collection 106 may include brandinformation packaged in a manner as to enable information regarding anyparticular brand to be provided to users 108 through brand engine 104.For example, brand collection 106 may store brand information in theform of “brand objects” (which may be referred to as “brandies”).Examples of brand collection 106 and brand objects are described infurther detail below.

As shown in FIG. 1, user information 110 for each user 108 may include abrand profile 112. Brand profile 112 is a list or any other datastructure that indicates one or more brands of interest to therespective user 108. For example, brand profile 112 b of user 108 b mayindicate that user 108 b is interested in brands A, B, and C, whilebrand profile 112 c of user 108 c may indicate that user 108 c isinterested in brands B, C, and D. A brand may be selected by a user 108from brand collection 106 to be included in the user's brand profile112. Alternatively, a brand may be selected by the user 108 from a brandprofile 112 of another user 108 to be included in the user's brandprofile 112. For example, user 108 c may select a brand from brandprofile 112 a of user 108 a to include in brand profile 112 c of user108 c.

Note that user information 110 a-110 n of users 108 a-108 n may bestored in a centralized storage or in distributed storage. For example,in one embodiment, user information 110 a-110 n may be stored in acommon storage structure. In another embodiment, user information 110may be stored locally to each corresponding user 108 (e.g., stored on alocal hard drive for each user 108). Furthermore, user information 110and brand profile 112 may be stored together, or at separate storagelocations.

As shown in FIG. 1, brand engine 104 interfaces brand collection 106with social network 102 through first and second communicationinterfaces 114 and 116. Brand engine 104 is communicatively coupled withsocial network through first communication interface 114, and iscommunicatively coupled with brand collection 106 through secondcommunication interface 116. First and second communication interfaces114 and 116 may include any type and/or combination of communicationlinks, including wired and/or wireless links, such as IEEE 802.11wireless LAN (WLAN) wireless links, Ethernet links, USB links, etc. Inan embodiment, brand engine 104 may include one or more networkinterfaces, including wired or wireless interfaces, such as an as IEEE802.11 wireless LAN (WLAN) wireless interface, an Ethernet interface, aUSB interface, etc.

In an embodiment, brand engine 104 enables users 108 to obtain brandobjects from brand collection 106 for inclusion in brand profiles 112.For instance, brand engine 104 may provide an interface (e.g., awebsite) through which users 108 can select brand objects from brandcollection 106. Users 108 may view and/or interact with the brandobjects in their own brand profile 112, and may view and/or interactwith the brand objects in brand profiles 112 of other users 108. Forexample, users 108 may be able to view and/or interact with brandobjects in their own profile page, and in profile pages of other users108. In this manner, information regarding a brand represented by abrand object may be provided from one user 108 to another user 108without requiring action from the advertiser (other than providing thebrand object to brand collection 106).

Example embodiments for brand marketing and social network system 100,and the elements thereof, are described in the following subsections.

A. Example Brand Collections

A brand is a product, service, or any other real world entity orinformation object which has an identity. Brand collection 106 shown inFIG. 1 may be a database or any other suitable data structure that maybe configured to contain information representative of one or more suchbrands. Brand collection 106 may include brand information packaged in amanner as to enable brands to be provided to user 108 through brandengine 104, and to be shareable between users 108.

For example, FIG. 2 shows a brand database 200, which is an example ofbrand collection 106 shown in FIG. 1, according to an embodiment of thepresent invention. As shown in FIG. 2, brand database 200 includesinformation related to first-xth brands 202 a-202 x. Informationrelating to any number of brands 202 may be stored in brand database200. In the example of FIG. 2, brand information for each brand 202 ispresent in the form of one or more brand objects 204. For example, asshown in FIG. 2, brand 202 a has brand objects 204 aa-204 ay, and brand202 x has brand objects 204 xa-204 xz.

A brand object 204 includes one or more files and/or other datastructures containing information representative of an aspect of thecorresponding brand 202. For example, if brand 202 a is the BMW™ brand,various brand objects 204 may be present that represent aspects of theBMW™ brand. For instance, brand object 204 aa may be representative ofthe BMW™ brand generally, brand object 204 ab may be representative ofthe BMW Z4 Coupe, brand object 204 ac may be representative of the BMW 1Series Convertible, etc.

A brand object 204 may represent a brand in the form of one or more oftext, image(s), video (e.g., video files; such as an MPEG format), audio(e.g., sound files; such as WMA or WAV formats)), and/or other mediaforms. Brand objects 204 may be interactive or non-interactive. Forexample, in an embodiment, a brand object 204 may be a multi-mediaobject or a rich media object. A brand object 204 may include softwarecode, such as Javascript™, C++, ActionScript (e.g., in an Adobe Flashimplementation), and/or other code, to enable desired functionalityand/or interactivity. When listed in user information 210 of a user 108(shown in FIG. 1), a brand object 204 may be displayed in the profilepage of the user. A brand object 204 may be displayed as text, as animage (e.g., as an icon) and/or as a video, and sound may optionally begenerated by an associated audio file.

A brand object 204 is a shareable expression of brand identity. Brandobjects 204 may be shared among users 108 in social network 102. Forexample, users 108 may display brand objects 204 in their respectiveuser/brand profiles. Other users 108 in social network 102 who view thedisplayed brand objects 204 may copy to their own user/brand profilesone or more of the displayed brand objects 204 that are of interest. Auser's particular collection of brand objects 204 may be reflective ofthe personality, interests, hobbies, etc., of the user.

In an embodiment, a brand object 204 may be monetizable. For example,the display of a brand object 204 may cause advertising revenue to bepaid an operator/owner of brand engine 104, to an entity that createdand/or supplied the brand object, to a user 108 that includes thedisplayed instance of the brand object in their user/brand profile,and/or to other entity.

In embodiments, brand collection 106 shown in FIG. 1 may be stored inany suitable storage medium, including mass storage such as opticaldiscs and/or magnetic storage (e.g., hard disks), and/or in memorydevices (e.g., volatile or non-volatile random access memory (RAM)).

B. Example Brand Engines

In embodiments, brand engine 104 enables users 108 to obtain brandobjects from brand collection 106 for inclusion in brand profiles 112.Brand engine 104 enables users 108 to share the brand objects, andmanages display of the brand objects in brand profiles 112 for users108. Brand engine 104 may be implemented in hardware, software,firmware, or any combination thereof. For example, brand engine 104 maybe implemented in one or more computer systems (e.g., servers)containing one or more processors that execute code to perform functionsof brand engine 104.

FIG. 3 shows a block diagram of a brand engine 300, which is an exampleof brand engine 104 shown in FIG. 1, according to an example embodimentof the present invention. As shown in FIG. 3, brand engine 300 includesa brand object manager 302, an association manager 304, a publicationmanager 306, and a commerce manager 308. These elements of brand engine300 are described in detail as follows.

Brand object manager 302 manages the availability of brand objects bybrand engine 300. Advertisers and/or other entities (e.g., brandmanagers) that may create brand objects may communicate with brandobject manager 302 over communication interface 310 to provide thegenerated brand objects for inclusion in brand collection 106 (shown inFIG. 1). Furthermore, brand object manager 302 may enable theadvertisers and/or other entities to access the brand objects present inbrand collection 106 in order to make modifications to the brandobjects, and/or to remove the brand objects from brand collection 106 ifneeded.

In an embodiment, users 108 in social network 102 may be enabled bybrand object manager 302 to view, add, modify, and/or delete brandobjects 204 in brand collection 106. Brand object manager 302 mayprovide access to a brand object template that may be used byadvertisers, users 108, and/or other entities to generate brand objects204.

Association manager 304 enables associations to be formed between users108 and brand objects 204, and monitors such associations. Associationmanager 304 may receive a brand profile modification request 312 (e.g.,over communication link 114) from users 108 to modify a correspondingbrand profile 112, such as by adding or deleting a brand object 204 froma brand profile 112. For example, referring to FIGS. 1 and 2, user 108 amay desire to add brand object 204 ay to the brand profile of first user108 a (brand profile 112 a). Association manager 304 is configured tomodify brand profile 112 a according to brand profile modificationrequest 312, including being configured to add brand object 204 ay tobrand profile 112 a (or to remove brand object 204 ay from brand profile112 a, if so requested).

Association manager 304 may be configured to access brand profiles 112,including brand profile 112 a, from any storage configuration and/orlocation, for modification. For example, brand profiles 112 may bestored in a centralized storage location (e.g., a storage 318 shown inFIG. 3), at a separate storage location for each of users 108 (e.g., inuser devices of users 108), or in other location(s).

Note that brand profile modification request 312 may be generated invarious ways. For example, brand object manager 302 may enable firstuser 108 a to browse brand objects 202 aa-202 ay of brand 202 a in branddatabase 300 shown in FIG. 2. First user 108 a may select brand object204 ay in brand database 300, causing an initiation of brand profilemodification request 312. Alternatively, first user 108 a may view brandprofile 112 b of second user 108 b (e.g., as displayed in a profile pageof second user 108 b). First user 108 a may select brand object 204 aydisplayed in viewed brand profile 112 b, which may initiate brandprofile modification request 312.

Publication manager 306 manages publication of brand profiles 112 ofusers 108, such as when a user 108 displays a profile page. A brandprofile 112 to be displayed may be the user's own brand profile 112 or abrand profile 112 of another user 108 of social network 102. Publicationmanager 306 may receive a brand profile publication request 314 (e.g.,over communication link 114) indicating a request from a user 108 todisplay a brand profile 112. Publication manager 306 may request thebrand profile 112 indicated in brand profile publication request 314from storage 318. Publication manager 306 determines any brand objectspresent in the requested brand profile 112, accesses the determinedbrand objects in brand collection 106 (over communication interface116), and provides the determined one or more brand objects 204 to therequesting user 108 in a brand profile publication response signal 320(e.g., over communication link 114). The requesting user 108 receivesbrand profile publication response signal 320, which enables therequesting user 108 to display the determined brand objects 204.

Commerce manager 308 performs accounting and commerce functions forbrand engine 300. Commerce manager 308 may track interactions of users108 with brand objects 204, which may optionally be monetized. Forexample, commerce manager 308 may track displays of brand objects 204 bymonitoring brand profile publication signal 320 generated by publicationmanager 306. Furthermore, commerce manager 308 may track interactionswith displayed brand objects 204, such as when a user 108 clicks on abrand object 204 (e.g., to display a brand page). Commerce manager 308may generate one or more transaction logs 322 to log any generatedtracking information. Transaction logs 322 may be stored in storage 318or in other storage system. The tracked information (e.g., views ofbrand objects 204, clicks of brand objects 204, etc.) can be used togenerate revenue for an entity associated with brand engine 300 (e.g.,an operator or owner of brand engine 300).

For example, commerce manager 308 may store cost-per-interactioninformation, such as cost-per-view and/or cost-per-click information,which can be multiplied by the tracked displays and/or clicks todetermine fees to charge to advertisers (and/or other entities)associated with the displayed and/or clicked brand objects. Commercemanager 308 may be configured to communicate with the advertisers(and/or other entities) over communication interface 316 to chargeand/or collect fees. For example, commerce manager 308 may transmitcharged fees to advertisers over communication interface 316, and mayreceive/confirm electronic payments over communication interface 316.

Brand object manager 302, association manager 304, publication manager306 and commerce manager 308 may be implemented in hardware, software,firmware, or any combination thereof. For example, brand object manager302, association manager 304, publication manager 306 and commercemanager 308 may each be implemented in code configured to execute in oneor more processors. Storage 318, when present, may be any suitablestorage medium, including mass storage such as one or more optical discsand/or magnetic storage (e.g., hard disks), and/or memory devices (e.g.,volatile or non-volatile random access memory (RAM)).

C. Social Network Embodiments

Social network 102 shown in FIG. 1 may be implemented in a variety ofways. For example, in one embodiment, brand engine 104 may be configuredto manage all user information 110 for each user 108 of social network102, as well as manage distribution/sharing of brands. In such anembodiment, brand engine 104 may function as a social network servicethat manages social network 102. In another embodiment, brand engine 104may manage distribution/sharing of brands, while at least some of themanagement of user information 110 for users 108 is performed internalto social network 102.

For example, FIG. 4 shows a block diagram of a brand marketing andsocial network system 400, which is an example of system 100 shown inFIG. 1, according to an example embodiment of the present invention. Asshown in FIG. 4, brand marketing and social network system 400 includesuser devices 402, a network 404, a social network engine 406, brandengine 104, advertisers 408, a social network database 410, and brandcollection 106. In FIG. 4, user devices 402, network 404, social networkengine 406, and social network database 410 represent an exampleembodiment of social network 102 of FIG. 1. In the embodiment of FIG. 4,social network engine 406 performs at least a portion of the socialnetwork management functions performed in system 400.

As shown in FIG. 4, social network engine 406 is communicatively coupledwith user devices 402 through network 404. Network 404 may be a LAN, aWAN, or combination of networks, such as the Internet. Three exampledevices are shown as user devices 402 in FIG. 4, for purposes ofillustration. User devices 402 may include hundreds, thousand, or evenmillions of user devices. Example user devices 402 include a desktopcomputer 414, a mobile computing device 416, and a mobile phone 418.Desktop computer 414 may be any type of stationary computer mentionedherein or otherwise known, including a personal computer. Mobilecomputing device 416 may be any type of mobile computing device,including a mobile computer (e.g., a Palm® device, a personal digitalassistant (PDA), a laptop computer, a notebook computer, etc.) or mobileemail device (e.g., a RIM Blackberry® device). Mobile phone 418 may beany type of mobile phone, including a cell phone. User devices 402 mayinclude any number and type of devices that users may use to interactwith social network engine 406 and/or brand engine 104, including oralternative to the example user devices shown in FIG. 4.

Each user device may communicate with social network engine 406 througha corresponding communication link. For example, as shown in FIG. 4,desktop computer 414 is communicatively coupled with network 404 througha first communication interface 428, mobile computing device 416 iscommunicatively coupled with network 404 through a second communicationinterface 430, and mobile phone 418 is communicatively coupled withnetwork 404 through a third communication interface 432. Social networkengine 406 is shown communicatively coupled with network 404 through afourth communication interface 434. First-fourth communicationinterfaces 428, 430, 432, and 434 may include any type or combination ofcommunication links, including wired and/or wireless links, such as IEEE802.11 wireless LAN (WLAN) wireless links, cellular network links,wireless personal area network (PAN) links (e.g., Bluetooth™ links),Ethernet links, USB links, etc.

Social network engine 406 is a social network service that enables theformation of communities of users, and manages the user communities. Forexample, social network engine 406 may be a social networking servicethat exists on the World Wide Web. Social network engine 406 may enableusers of user devices 402 to interact with each other in any number ofways, including through blogging, discussion groups, email, filesharing, instant messaging, online chat, video, voice chat, and/or othertechniques. For instance, social network engine 406 may provide awebsite that enables users of user devices 402 to interact with eachother using any of these techniques. In embodiments, social networkengine 406 may be a conventional social network service, such as Bebo(www.bebo.com), Classmates.com™ (www.classmates.com), Facebook™,(www.facebook.com), LinkedIn™ (www.linkedin.com), MySpace.com™(www.myspace.com), Twitter (www.twitter.com), or any other socialnetwork service.

Social network engine 406 is communicatively coupled to social networkdatabase 410 by a communication interface 436. Social network database410 stores user information 110 for each user of user devices 402. Forinstance, as shown in the example of FIG. 4, social network database 410stores user information 110 a-110 n. Social network engine 406 may hostone or more self-description pages (also referred to as a “profilepage”) for each user of user devices 402 based on each user's respectiveuser information 110. In one embodiment, a profile page may be displayedas a web page using a web browser. Social network engine 406 may enablethe users to link their profile pages with profile pages of friends,and/or may provide other ways for networks of users to be formed and tointeract.

Brand engine 104 is communicatively coupled to advertisers 408 bycommunication interface 310, and to brand collection 106 bycommunication interface 116. Advertisers 408 (and/or other entities) maycommunicate with brand engine 104 over communication interface 310(e.g., as described above with respect to FIG. 3) to provide brandobjects for inclusion in brand collection 106. Communication interface412 may include any type or combination of communication links,including wired and/or wireless links, such as IEEE 802.11 wireless LAN(WLAN) wireless links, cellular network links, Ethernet links, USBlinks, etc. In an embodiment, advertisers 408 may communicate with brandengine 104 through network 404 (e.g., the Internet).

Brand engine 104 is communicatively coupled to social network engine 406by a communication interface 438. In the embodiment of FIG. 4, socialnetwork database 410 maintains brand profiles 112 a-112 n. Brand engine104 manages brand profiles 112 a-112 n by accessing brand profiles 112a-112 n (and/or the remainder of user information 110 a-110 n whendesired) contained by social network database 410 through social networkengine 406. Furthermore, communications with users of user devices 402occur through social network engine 406. For instance, brand profilemodification request 312, brand profile publication request 314, andbrand profile publication response signal 320 (described above withrespect to FIG. 3) may be received from/transmitted to social networkengine 406 over communication interface 438 rather than directly from/tothe users.

D. User Information

As described above, user information 110 for each user 108 may includevarious types and amounts of information. The user information includedin user information 110 for each user 108 may be actively provided by auser, collected from user devices 402 through social network 102 and/oranother channel, provided from some other network, system or databasethat aggregates such data, or by any combination of the foregoing. Forexample, FIG. 5 shows a block diagram of user information 500, which isan example of user information 110, according to an embodiment of thepresent invention. User information 500 shown in FIG. 5 may be includedin a file or other data structure. Each element of user information 500shown in FIG. 5 may be one or more data fields, data records, or othertype of data entry in a data structure.

As shown in FIG. 5, user information 500 includes user data 510 andbrand profile 112. User data 510 includes spatial data 502, temporaldata 504, social data 506 and topical data 508. As indicated in FIG. 5(by a dotted line), brand profile 112 may be considered a form oftopical data 508. Each of the elements of user data 510 shown in FIG. 5is not necessarily present in all embodiments. The elements of user data510 shown in FIG. 5 are described as follows.

Spatial data 502 may be any information associated with a location of auser and/or an electronic device associated with the user. For example,spatial data 502 may include any passively-collected location data, suchas cell tower data, GPRS data, global positioning service (GPS) data,WI-FI data, personal area network data, IP address data and data fromother network access points, or actively-collected location data, suchas location data entered into a device by a user. Spatial data 502 maybe obtained by tracking the path and state of an electronic device(e.g., a user device 402) associated with the user.

Temporal data 504 is time-based data (e.g., time stamps) or metadata(e.g., expiration dates) that relates to specific times and/or eventsassociated with a user and/or an electronic device associated with theuser. For example, temporal data 504 may include passively-collectedtime data (e.g., time data from a clock resident on an electronicdevice, or time data from a network clock), or actively-collected timedata, such as time data entered by the user of the electronic device(e.g., a user-maintained calendar).

Social data 506 may be any data or metadata relating to therelationships of a user of an electronic device. For example, socialdata 506 may include user identity data, such as gender, age, race,name, an alias, a status of the user (e.g., an online status or anon-online related status) (e.g., at work, at sleep, on vacation, etc.),a social security number, image information (such as a filename for apicture, avatar, or other image representative of the user), and/orother information associated with the user's identity. User identityinformation may also include e-mail addresses, login names andpasswords. Social data 506 may also include social network data. Socialnetwork data may include data relating to any relation of the user ofthe electronic device that is input by a user, such as data relating toa user's friends, family, co-workers, business relations, and the like.Social network data may include, for example, data corresponding with auser-maintained electronic address book. Certain social data may becorrelated with, for example, location information to deduce socialnetwork data, such as primary relationships (e.g., user-spouse,user-children and user-parent relationships) or other relationships(e.g., user-friends, user-co-worker, user-business associaterelationships) and may be weighted by primacy.

For example, as shown in FIG. 5, social data 506 may includerelationship information 514. Relationship information 514 includes alist or other data structure indicating friends of the user, includingfriends that are other users 108 participating in social network 102.Relationship information 514 may include categories for the indicatedfriends, such as “relatives,” “spouse,” “parents,” “children,”“cousins,” “best friends,” “boss,” “co-workers,” and/or any othersuitable category.

Social data 506 may further include reputation information regarding theuser within the confines of social network 102. For example, other users108 in social network 102 may be able to comment on and/or provide arating for the user. An overall rating may be determined for the user,which may represent a reputation for the user in social network 102.

Topical data 508 may be any data or metadata concerning subject matterin which a user of an electronic device appears to have an interest oris otherwise associated. Topical data 508 may be actively provided by auser or may be derived from other sources. For example, topical data 508may include one or more transaction log(s) 504 of transactions involvingthe user. For example, transaction log(s) 504 may include logs ofsearches (e.g., query lists/results lists) performed by the user, logsof commerce undertaken by the user, logs of website/webpage browsing bythe user, logs of communications (e.g., with friends in social network102) by the user, etc. As mentioned above, topical data 508 may includethe user's brand profile 112/brand objects 204.

Both social data 506 and topical data 508 may be derived frominteraction data. As used herein, the term interaction data refers toany data associated with interactions carried out by a user via anelectronic device, whether active or passive. Examples of interactiondata include interpersonal communication data, media data, transactiondata and device interaction data.

Interpersonal communication data may be any data or metadata that isreceived from or sent by an electronic device and that is intended as acommunication to or from the user. For example, interpersonalcommunication data may include any data associated with an incoming oroutgoing SMS message, e-mail message, voice call (e.g., a cell phonecall, a voice over IP call), or other type of interpersonalcommunication relative to an electronic device, such as informationregarding who is sending and receiving the interpersonalcommunication(s). As described below, interpersonal communication datamay be correlated with, for example, temporal data to deduce informationregarding frequency of communications, including concentratedcommunication patterns, which may indicate user activity information.

Media data may be any data or metadata relating to presentable media,such as audio data, visual data and audiovisual data. Audio data may be,for example, data relating to downloaded music, such as genre, artist,album and the like, and may include data regarding ringtones, ringbacks, media purchased, playlists, and media shared, to name a few.Visual data may be data relating to images and/or text received by anelectronic device (e.g., via the Internet or other network). Visual datamay include data relating to images and/or text sent from and/orcaptured at an electronic device. Audiovisual data may include data ormetadata associated with any videos captured at, downloaded to, orotherwise associated with an electronic device.

Media data may also include media presented to a user via a network,such as via the Internet, data relating to text entered and/or receivedby a user using the network (e.g., search terms), and data relating tointeraction with the network media, such as click data (e.g.,advertisement banner clicks, bookmarks, click patterns and the like).Thus, media data may include data relating to a user's RSS feeds,subscriptions, group memberships, game services, alerts, and the like.Media data may also include non-network activity, such as image captureand/or video capture using an electronic device, such as a mobile phone.Image data may include metadata added by a user, or other dataassociated with an image, such as, with respect to photos, location atwhich the photos were taken, direction of the shot, content of the shot,and time of day, to name a few. As described in further detail below,media data may be used for example, to deduce activities information orpreferences information, such as cultural and/or buying preferencesinformation.

Interaction data may also include transactional data or metadata.Transactional data may be any data associated with commercialtransactions undertaken by a user via an electronic device, such asvendor information, financial institution information (e.g., bankinformation), financial account information (e.g., credit cardinformation), merchandise information and cost/prices information, andpurchase frequency information, to name a few. Transactional data may beutilized, for example, to deduce activities and preferences information.Transactional information may also be used to deduce types of devicesand/or services owned by a user and/or in which a user may have aninterest.

Interaction data may also include device interaction data and metadata.Device interaction data may be any data relating to a user's interactionwith an electronic device not included in any of the above categories,such as data relating to habitual patterns associated with use of anelectronic device. Example of device interaction data include dataregarding which applications are used on an electronic system/device andhow often and when those applications are used. As described in furtherdetail below, device interaction data may be correlated with temporaldata to deduce information regarding user activities and patternsassociated therewith.

User data 510 may also include deduced information. The deducedinformation may be deduced based on one or more of spatial data 502,temporal data 504, social data 506, or topical data 508 as describedabove. The deduced information may thus include information relating todeduced locations and/or deduced activities of the user. For example,the deduced information may comprise one or more of a primary userlocation, secondary user location, past locations, present location, andpredicted future location information. The deduced information mayinclude information deduced based on a correlation of spatial data 502in conjunction with temporal data 504 to deduce such location data. Byway of illustration, spatial data 502 may be correlated with temporaldata 504 to determine that a user of an electronic device is often atone or more specific locations during certain hours of the day. In aparticular embodiment, spatial data 502 is correlated with temporal data504 to determine a primary user location (e.g., home), a secondarylocation (e.g., school or work) and/or other locations, as well as acyclical model for a user's spatial/temporal patterns.

The deduced information may also include activity information, such aspast activity information, present activity information, and predictedfuture activity information. In this regard, the past, present, orpredicted future activity information may include information relatingto past communications and/or co-locations with other users. By way ofexample, spatial data 502 may be correlated with temporal data 504 todetermine a user's activities (e.g., work, recreation and/or homeactivities).

The deduced information may also include preferences information. Thepreferences information may include cultural preferences and/or buyingpreferences information. The cultural preferences information may be anypreferences information relating to the culture of the user, such asgender preferences, ethnicity preferences, religious preferences and/orartistic preferences, to name a few. The buying preferences may be anypreferences associated with the buying habits of the user. Allpreferences may be explicitly provided by a user or implicitly derivedfrom aggregated user and network data.

User information 110 may be configured to support a user profile pagefor each user 108, which may be displayed as a web page or in otherform. For example, FIG. 6 shows an example user profile page 600 thatmay be displayed for a user 108 in social network 102, according to anembodiment of the present invention. User profile page 600 may be a webpage or other suitable type of page that is generated based on userinformation 110 of the user 108. As shown in FIG. 6, user profile page600 includes a user image 602, a user name 604, a user status 606,further user information 608, a friends section 610, posting(s) 614,applications(s) 616, and a brands section 618. Note that the locationsand sizes of the elements of user profile page 600 shown in FIG. 6 areprovided for purposes of illustration. The elements of user profile page600 may have sizes and/or locations in page 600 other than those shownin FIG. 6. Note that the user may interact with their user profile page600 to modify the contents of user information 500 (e.g., by addingfriends to friend section 610, changing user status 606, etc.). Userprofile page 600 is described as follows.

User image 602 is an image of the user on which page 600 is based. Theimage may be a picture, avatar, or other image representative of theuser, based on the filename or other image information provided insocial data 506 of user information 500 (shown in FIG. 5).

User name 604 is a name, nickname, or alias for the user on which page600 is based, as provided in social data 506.

User status 606 is a status (online and/or offline) for the user onwhich page 600 is based, as provided in social data 506.

Further user information 608 is any further information for the userthat may be displayed on page 600, as provided in user information 500.For example, further user information 608 may include further uservitality information, reputation information (based on social data 506),location information (based on user spatial data 502), etc.

Friend section 610 provides friend images 612 (e.g., photographicimages, icons, videos, etc.) for the friends included in relationshipinformation 514 by the user. In the example of FIG. 6, friend images 612a-612 n are shown. Note that friend section 610 may display images 612for all friends included in relationship information 514 by the user, ormay display images 612 for a portion of the friends (e.g., to conservespace if the number of friends of the user included in relationshipinformation 514 is relatively large).

Posting(s) 614 may include text, images, videos, audio, etc., that maybe posted by the user and/or by friends of the user. Information ofposting(s) 614 may be tracked in transaction logs of topical data 508,for example.

Application(s) 616 includes applications selected by the user to beactive in user profile page 600. For example, application(s) 616 mayinclude games, surveys, quizzes, social tools, information sources, etc.

Brands section 618 displays information of brand profile 112. Forexample, as shown in FIG. 6, brand section 618 includes a user brandpage link 620 and a plurality of brand object icons 622 a-622 m. Brandobject icons 622 are image icons representative of the brand object(s)512 shown in FIG. 5 for the user. The source image files for brandobject icons 622 may be packaged with their respective brand object.Note that brand section 618 may display brand object icons 622 for allbrand objects associated with the user, or may display brand objecticons 622 for a portion of the brand objects (e.g., to conserve space ifthe number of brand objects associated with the user is relativelylarge).

By displaying brand object icons 622 in user profile page 600, a usermay view the brand objects that the user has associated with his/hersocial network identity. By viewing a user profile page 600 of a seconduser, a first user may view the brand objects that the second user hasassociated with his/her social network identity. Based on viewing thebrand objects of the second user, the first user may decide to add oneor more of them to the brand objects of the first user.

User brand page link 620 is optionally present. In the example of FIG.6, the text of user brand page link 620 is “My Brands,” but may haveother text in other embodiments. User brand page link 620 is a link to abrand page of the user. The linked brand page is primarily focused onthe brand objects of the user. By selecting user brand page link 620,the user may navigate to the user's brand page.

For instance, FIG. 7 shows an example user brand page 700, according toan embodiment of the present invention. As shown in FIG. 7, user brandpage 700 includes brand object section 702 and user brand informationsection 704. These elements of user brand page 700 may have sizes and/orlocations in page 700 other than those shown in FIG. 7.

Brand object section 702 is similar to brand section 618 of user profilepage 600, displaying brand object icons 622 a-622 m, which are imageicons representative of the brand objects contained in brand profile 112for the user. Similarly to brand section 618, brand object section 702may display brand object icons 622 for all brand objects associated withthe user, or may display brand object icons 622 for a portion of thebrand objects (e.g., to conserve space if the number of brand objectsassociated with the user is relatively large).

User brand information section 704 includes information about the brandobjects having icons 622 displayed in brand object section 702. Forexample, as shown in FIG. 7, user brand information section 702 mayinclude brand ranking information 706, favorite brands 708, dislikedbrands 710, and optional further brand object information 712. Theseelements of section 702 are described as follows.

Brand ranking information 706 may include one or more rankings generatedby the user for the brand objects shown in brand object section 702. Forexample, brand ranking information 706 may include a “star” ratingsystem (e.g., 0-5 stars) or any other ranking system. Note that icons622 may be ordered in brand object section 702 according to such aranking. In such an embodiment, brand ranking information 706 may notnecessarily be shown on page 700.

Favorite brands 708 may display names, icons 622, or otherrepresentations for one or more favorite brand objects of the user, asselected by the user (e.g., by selecting them from the icons 622displayed in brand object section 702).

Disliked brands 710 may display names, icons 622, or otherrepresentations for one or more disliked brand objects of the user, asselected by the user (e.g., by selecting them from the icons 622displayed in brand object section 702, if any disliked brand objectsrepresented there).

Further brand object information 712 may include any text, images,video, audio, and/or other representation of any further information theuser desires to display regarding the brand objects having icons 622displayed in brand object section 702. For example, the user may providebrand page-related commentary, other users may be enabled to providecomments regarding brand page 700, and/or other information may beprovided for display in further brand object information 712.

As described above, brand objects may be interactive. For example, in anembodiment, a user may click on a brand icon 622 (e.g., in a userprofile page 600 or a user brand page 700) to cause action related tothe brand of the brand object, such as the opening of a web page of therepresented brand. The brand page may provide further information aboutthe brand to the user, including interactive and/or non-interactivebrand-related content. The next section describes example brand pages.

E. Brand Pages

Brand pages may provide information regarding brands. Brand pages may beprovided by the brand entity, an advertiser, or other entity. FIG. 8shows a block diagram of an example brand page 800, according to anembodiment of the present invention. As shown in FIG. 8, brand page 800includes an available brand objects section 802, a brand associationssection 804, an exclusive content section 806, a related content section808, and a communications section 810. The elements of brand page 800may have sizes and/or locations in page 800 other than those shown inFIG. 8. The elements of brand page 800 are described as follows. A usermay view brand page 800 by clicking a brand icon 622 (e.g., in theuser's own or other user's profile page) associated with the brandrepresented by brand page 800.

Available brand objects section 802 contains a display of brand objectsthat are available for the brand represented by brand page 800 in theform of brand icons 822. For example, if brand page 800 is a brand pagefor brand 202 a shown in FIG. 2, brand page 800 may display some or allof brand objects 204 aa-204 ay as brand object icons 822 a-822 y. In anembodiment, users may select brand objects to be included in their brandprofile 112 by selecting the appropriate brand icons 822 in brand page800.

Brand associations section 804 provides an indication of users that areassociated with the represented brand. For example, a user may beassociated with a brand if the user includes one or more brand objectsof the brand in the user's brand profile 112. For example, as shown inFIG. 8, brand associations section 804 may include an associated friendssection 812 and an associated users section 814. Associated friendssection 812 shows one or more friends of the user viewing brand page 800in the form of friend images 812 (which are similar to friend images 612shown in FIG. 6). Friend images 816 a-816 j are shown in FIG. 8 forillustrative purposes. Any number of friend images 816 may be present,depending on the number of friends associated with the representedbrand.

Likewise, associated users section 814 shows one or more users of socialnetwork 102 associated with the brand of brand page 800 in the form ofuser images 818. Any number of user images 818 may be present, dependingon the number of users associated with the represented brand. Userimages 818 a-818 c are shown in FIG. 8, for illustrative purposes.

Exclusive content section 806 shows content exclusive to the brandrepresented by brand page 800, to be viewed by users. For example,exclusive content section 806 may display community-related news,brand-related news, games (which may be interactive), contests, brandservices, and any other suitable exclusive content.

Related content section 808 may show content related to the brandrepresented by brand page 800, to be viewed by users. For example,related content section 808 may display sponsored advertisements orinterstitial advertisements, may provide links to useful websites (e.g.,to search engines, etc.), and/or may provide any other suitable relatedcontent.

Communications section 810 may show contacts and/or contact informationfor users and/or the brand represented by brand page 800. For example,communications section 810 may display contact information (e.g., alink, an email address, a phone number, etc.) for users that have signedup or have been determined to be advocates for the brand, for actualbrand representatives, for sales representatives for the brand, forcustomer support, etc.

F. Social and Brand Interactions in a Network

Interactions between brands and users in social network 102 of FIG. 1are leveraged to provide an enhanced presentation of brands and contentto users. This section describes several types of interactions that areenabled in embodiments of social network 102. These interactions includeuser-to-user interactions, interactions between a user and a brand, andinteractions between first and second users and a brand.

In a traditional social network, a user interacts with other users inone-way and two-way relationships. For example, in a one-wayrelationship, a first user may interact with a second user, such as bysending an email to the second user. In the one-way relationship, thesecond user does not interact with the first user. For instance, thesecond user may not respond to an email received from the first user. Ina two-way relationship, the first user may interact with a second user,and the second user interacts with the first user in response. Forinstance, the first user may provide a profile page that is viewed bythe second user, and the second user may provide a profile page that isviewed by the first user. Such one-way and two-way interactions arecommon in social networks, and may be performed in social network 102.

Two types of possible interactions between users and brands in socialnetwork 102 are described with respect to FIGS. 9 and 10. FIG. 9illustrates a block diagram of a first interaction type 900 that mayoccur between a person 902 and a brand 904. First interaction type 900shown in FIG. 9 is a one-way interaction. Interaction type 900 may alsobe referred to as an “attention interaction” or an “attention graph.” InFIG. 9, an arrow 906 points from brand 904 toward person 902 to indicatethat brand 904 interacts with person 902. For instance, brand 904 maytake action towards person 902 by displaying an advertisement that isviewed by person 902. Because first interaction type 900 shown in FIG. 9is a one-way interaction, person 902 does not interact back with brand904.

FIG. 10 illustrates a block diagram of a second interaction type 1000that may occur between person 902 and brand 904. Second interaction type1000 shown in FIG. 10 is a two-way interaction. Interaction type 1000may be referred to as a “social interaction” or a “social graph.” InFIG. 10, first arrow 906 points from brand 904 toward person 902 toindicate that brand 904 interacts with person 902. Furthermore, a secondarrow 1002 points from person 902 toward brand 904 to indicate thatperson 902 interacts with brand 904. Second arrow 1002 may indicate thatperson 902 has taken action towards brand 904. For example, person 902may have requested information related to brand 904, may have interactedwith a product or service of brand 904, and/or may have purchased aproduct or service related to brand 904.

First and second interaction types 200 and 1000 shown in FIGS. 9 and 10,respectively, are common interactions between persons 902 and brands904. For example, it is a common practice in the commercial world forbrands to be marketed to persons. Furthermore, it is common for personsto respond to the marketing by interacting with the brands reaching outto them.

FIGS. 11 and 12 show additional types of interactions between personsand brands enabled by embodiments of the present invention. FIG. 11illustrates a block diagram of a third interaction type 1100, which is athree way interaction that may occur between first person 902, a secondperson 1102, and brand 904. In FIG. 11, the two-way interaction (“socialgraph”) shown in FIG. 10 between first person 902 and brand 904 ispresent. First arrow 906 points from brand 904 toward person 902 toindicate that brand 904 interacts with person 902. Second arrow 1002points from person 902 toward brand 904 to indicate that person 902interacts with brand 904. Furthermore, a third arrow 1104 points fromfirst person 902 to third person 1102. Third arrow 1104 indicates thatfirst person 902 has taken action towards second person 1102 with regardto brand 904. For example, first person 902 may bring brand 904 to theattention of second person 1102, may provide information of interestwith regard to brand 904 to second person 1102, and/or take any furtheraction with regard to brand 904 to second person 1102. First person 902may interact with second person 1102 in any manner, including by sendingan email, chatting, blogging, enabling second person 1102 to view a userprofile page of first person 902 that displays an indication of brand904, etc. In this manner, first person 902 may act as an advocate (e.g.,in a marketing context) to second person 1102 with regard to brand 904(e.g., by relaying positive information regarding brand 904 to secondperson 1102).

FIG. 12 illustrates a block diagram of a fourth interaction type 1200,which is a three way interaction that may occur between first person902, second person 1102, and brand 904. In the example of FIG. 12, thetwo-way interaction (“social graph”) shown in FIG. 10 between firstperson 902 and brand 904 is present. First arrow 906 points from brand904 toward person 902 to indicate that brand 904 interacts with person902. Second arrow 1002 points from person 902 toward brand 904 toindicate that person 902 interacts with brand 904. Furthermore, a fourtharrow 1202 points from brand 904 to second person 1102. Fourth arrow1202 indicates that brand 904 has taken action towards second person1102 with regard to first person 902. For example, brand 904 may bringfirst person 902 to the attention of second person 1102, may provideinformation of interest with regard to first person 902 to second person1102, and/or take any further action with regard to first person 902 tosecond person 1102. Brand 904 may act as an advocate (e.g., in a socialcontext) to second person 1102 with regard to first person 902.

An example of this is a brand page (e.g., brand page 800) of brand 904that displays users associated with brand 904 (e.g., in associated userssection 814) including first person 902. First person 902 may bedisplayed as a user of brand 904 in associated users section 814, andmay be seen by second person 1102 when viewing brand page 800. In thismanner, brand 904 introduces first person 902 to second person 1102.

Interaction types 1100 and 1200 shown in FIGS. 11 and 12 are useful inmany contexts, including in advertising and social environments. Forexample, interaction type 1100 shown in FIG. 11 may be useful in asocial and/or advertising context. The brand objects described furtherabove enable the three-way interaction of first interaction type 1100.For example, an advertiser may display a brand object which is seen by afirst user of social network 102 (first arrow 906). The first user mayinteract with the brand object (second arrow 1002), and may place thebrand object in the first user's brand profile for display in the user'suser profile page. A second user of social network 102 may view thebrand object when viewing the first user's user profile page (thirdarrow 1102). In this manner, the first user advocates the brandrepresented by the brand object to the second user, according tointeraction type 1100

Social network 102 may include any number and combination of the abovedescribed interactions between persons and brands. For example, FIG. 13shows an example social network 1300, which is an example of socialnetwork 102 shown in FIG. 1. Social network 1300 includes persons 1302a-1302 i and brands 1304 a-1304 e, for illustrative purposes. In socialnetwork 1300, persons 1302 interact with each other in one-wayinteractions (e.g., as between persons 1302 a and 1302 b) and in two-wayinteractions (e.g., as between persons 1302 b and 1302 c). Furthermore,in social network 1300, persons 1302 and brands 1304 interact with eachother in one-way interactions (e.g., as with brand 1304 a and person1302 b) and in two-way interactions (e.g., as with brand 1304 a andperson 1302 a). Still further, in social network 1300, persons 1302 andbrands 1304 interact with each other in three-way interactions. Forexample, brand 1304 e, person 1302 g, and 1302 i interact in a three-wayinteraction similar to interaction type 1100 shown in FIG. 11 (e.g.,person 1302 i advocates brand 1304 e to person 1302 g). In anotherexample, brand 1304 b, person 1302 e, and 1302 f interact in a three-wayinteraction similar to interaction type 1200 shown in FIG. 12 (e.g.,brand 1304 b introduces person 1304 f to person 1302 e; as shown in FIG.12, person 1302 e may interact directly with person 1304 f subsequent tothe introduction).

Each person 1302 may interact with any number of other persons 1302 insocial network 102, including by being introduced to a person 1302 byanother person 1302 or brand 1304, which can be used to add friends to afriends list. Furthermore, each person 1302 may interact with any numberof brands 1304 in social network 102, including by being introduced to abrand 1304 by another person 1302, to add brands to a person's list ofbrands (brand profile). Furthermore, this linking of brands and users(as indicated in friends lists and brand profiles of users) may be usedby brand engine 104 to provide enhanced presentations of brands andcontent to users. Example embodiments for such enhanced presentation ofbrands and content are described in the next sections.

III. Example Embodiments for Modifying Brand Profiles

Example embodiments are described in this section for enhancedpresentations of brands. Embodiments are described for modifying thedisplay of brand profiles based on context. The example embodimentsdescribed herein are provided for illustrative purposes, and are notlimiting. Further structural and operational embodiments, includingmodifications/alterations, will become apparent to persons skilled inthe relevant art(s) from the teachings herein.

FIG. 14 shows a flowchart 1400 for displaying brand information,according to an example embodiment of the present invention. Flowchart1400 may be performed by publication manager 306 of brand engine 300shown in FIG. 3, for example. For illustrative purposes, flowchart 1400is described with respect to a publication manager 1500 shown in FIG.15, which is an example of publication manager 306, according to anembodiment of the present invention. As shown in FIG. 15, publicationmanager 1500 includes a mapping module 1502 and a brand profile modifiermodule 1504. Further structural and operational embodiments will beapparent to persons skilled in the relevant art(s) based on thediscussion regarding flowchart 1400. Flowchart 1400 is described asfollows.

Flowchart 1400 begins with step 1402. In step 1402, a request isreceived from a first user to display user information of a second user,the first user having associated user information that includes a firstbrand profile, and the user information of the second user including asecond brand profile. For example, as shown in FIG. 15, mapping module1502 may receive a brand profile publication request 1508 (similar tobrand profile publication request 314 described above with respect toFIG. 3). Brand profile publication request 1508 may be received from auser in social network 102 shown in FIG. 1, such as first user 108 a,for example. Request 1508 indicates a request by first user 108 a todisplay user information of a second user, such as user information ofsecond user 108 b, for example. Request 1508 may be generated by firstuser 108 a in any manner, including by clicking on a friend image 612(FIG. 6) of second user 108 b, by clicking on a link to brandinformation of second user 108 b, or by interacting with any otherimage, text, or other object in social network 102 that may result inuser information of second user 108 b being displayed.

For example, in request 1508, first user 108 a may be requesting to viewa complete profile page (e.g., user profile page 600) of second user 108b, which may result in the display of all or a relatively large amountof user information 110 b. Alternatively, first user 108 a may berequesting to view any subset of the information contained in userinformation 110 b of second user 108 b in request 1508. For example, inrequest 1508, first user 108 a may be specifically requesting to viewthe contents of brand profile 112 b of second user 108 b.

In step 1404, the user information of the first user is mapped to atleast the user information of the second user. For example, as shown inFIG. 15, mapping module 1502 receives user information 110 a and userinformation 110 b, and generates a map 1512 in response to receivingrequest 1508. Mapping module 1502 may generate map 1512 to overlay userinformation 110 a and user information 110 b. Map 1512 may indicate oneor more overlaps in the information 110 a and 110 b to determine one ormore relationships between first and second users 108 a and 108 b.

In another embodiment, map 1512 is generated to include a mappingbetween user information 110 a of first user 108 a and user information110 of a plurality of further users 108 (including user 108 b). Map 1512may indicate one or more overlaps in user information 110 a, 110 b, anduser information 110 of the further users 108, which may be used todetermine one or more relationships between first user 108 a, secondusers 108 a, and the further users 108. For instance, as shown in FIG.15, in response to receiving request 1508, mapping module 1502 may mapuser information 110 a of first user 108 a to user information 110 b-110x of a plurality of users 108 b-108 x in social network 102.

When user information of a plurality of users 108 is mapped with theuser information of first user 108 a, the particular plurality of usersto have their user information mapped may be determined in any manner.For example, users 108 listed in relationship information 514 (FIG. 5)(e.g., friends) for first user 108 a and/or second user 108 b may beincluded in the mapping. Users 108 listed directly in relationshipinformation 514 for first user 108 a and/or second user 108 b may beconsidered a first tier of relationships in a relationship hierarchy.Mapping module 1502 may include further users from further tiers ofusers in the relationship hierarchy. For instance, mapping module 1502may include users from a second tier of users in the relationshiphierarchy, which are the users listed in relationship information 514 ofthe users of the first tier. Mapping module 1502 may additionallyinclude users from a third tier, and even further tiers in therelationship hierarchy by continuing to traverse the social connectionsindicated in relationship information 514 for the users in eachsubsequent tier.

Thus, in embodiments, mapping module 1502 may generate a map 1512 basedon a mapping of user information of first user 108 a and any number ofadditional users 108 in social network 102, including tens, hundreds,thousands, and even greater numbers users 108. Such embodiments leveragea large number and many types of interactions occurring between users insocial network 102, including interactions types 900, 1000, 1100, and1200 described above (with respect FIGS. 9-12), to generate increasinglymore useful information in map 1512.

In embodiments, mapping module 1502 may map a portion or all of theinformation in user information 110 a of first user 108 a withcorresponding information in user information 110 b of second user 108 b(and optionally with user information 110 of one or more further users108). For example, map 1512 may include a mapping of brand profiles 112.Brand profile 112 a of first user 108 a may be mapped to brand profile112 b of second user 108 b. The mapping may further include a mapping tobrand profiles 112 of further users 108. Overlaps in map 1512 mayindicate one or more brand objects 204 that co-occur in brand profiles112 a and 112 b (and optionally in further brand profiles 112). Map 1512may also indicate brand objects 204 that occur in brand profile 112 abut do not occur in brand profile 112 b (and/or in further brandprofiles), and that do not occur in brand profile 112 a but do occur inbrand profile 112 b (and/or in further brand profiles 112).

The mapping just described may be considered a “social” and “topical”mapping between users. For instance, users 108 may each have relatedusers 108 in social network 102, which may be referred to as “friends.”Users 108 that are friends of a user 108 may be indicated in anassociated data structure of the user 108, such as relationshipinformation 514 shown in FIG. 5. These related users 108 may beconsidered as social social data 506 for a user 108. Furthermore, brandobjects 204 contained in brand profiles 112, and which relate to brands,may be considered as topical data 508 for a user 108. Because mappingmodule 1502 maps user information 110 between users 108, includingmapping brand profiles 112 of the users 108, this mapping of brand maybe considered a “social” and “topical” mapping between users.

In further embodiments, additional user data of user information 110 maybe mapped by mapping module 1502 between users 108, including spatialdata 502 and/or temporal data 504 (shown in FIG. 5 for user data 510) ofthe users 108. For instance, location information related to a user 108may be stored as spatial data 502 for the user 108. This locationinformation may be mapped for user 108 a, user 108 b, and optionally forfurther users 108 in map 1512. Furthermore, time information related toa user 108 may be stored as temporal data 504 for the user 108. Thistime information may be mapped for user 108 a, user 108 b, andoptionally for further users 108 in map 1512. Examples of spatial data502 and temporal data 504 that may be included in user information forusers, and thus that may be mapped by mapping module 1502, are describedas follows.

Spatial data 502 may include one or more locations at which a user 108interacted with information and/or real world entities related to brandobjects 204. For example, first user 108 a may have walked by, drivenpast, or even stopped/paused in front of a BMW™ dealership at anintersection of Main and Maple Streets in Springfield, Mo. This spatialinformation may be stored in user data 510 a of first user 108 a. Forinstance, the location “intersection of Main and Maple Streets inSpringfield, Mo.” may be stored as spatial data 502 of user data 510 a.This location information may be related to a brand object 204. Forexample a BMW™ brand object 204 may be present in brand profile 112 b ofsecond user 108 b. Thus, spatial data 502 related to BMW™ brand object204 may be associated with second user 108 b, because brand profile 112b of second user 108 b includes the BMW™ brand object 204. A location ofall BMW dealerships may be associated with the BMW™ brand object 204,and thus may be included in spatial data 502 for second user 108 b. Ifmap 1512 is generated to include a mapping of spatial data for users108, map 1512 may indicate an overlap in spatial data 502 for first user108 a and in spatial data 502 for second user 108 b, in the BMW™dealership at an intersection of Main and Maple Streets in Springfield,Mo.

Temporal data 504 may include times at which users 108 interacted withinformation and/or real world entities related to brand objects 204. Forexample, both first user 108 a and second user 108 b may have attendedthe same concert or other event, as indicated by both first user 108 aand second user 108 b having the same location (the location of theconcert) at the same time (the time of the concert) indicated in theirrespective spatial and temporal data 502 and 504. If map 1512 isgenerated to indicate a mapping of spatial and temporal data for users108, map 1512 may indicate an overlap in spatial data 502 and temporaldata 504 for first and second users 108 a and 108 b due to both of theirattendances at the concert.

In another example, while spatial data 502 may indicate that users 108have been to a same location, temporal data 504 may indicate the users108 were at the same location at different times. For example, spatialdata 502 of first and second users 108 a and 108 b may indicate theyboth purchase coffee at a common coffee shop. Temporal data 504 of firstuser 108 a may indicate that first user 108 a shops at the coffee shopat a first time (e.g., in the morning), while the temporal data 504 ofsecond user 108 b may indicate that second user 108 a shops at thecoffee shop at a second time (e.g., in the evening). Thus, if map 1512is generated to indicate a mapping of spatial and temporal data forusers 108, map 1512 may indicate an overlap in spatial data 502(shopping at same coffee shop), while indicating a lack of overlap intemporal data 504 (shopping at different times), with regard to firstand second users 108 a and 108 b.

Thus, in step 1404 of flowchart 1400, mapping module 1502 may generatemap 1512 to map user data related to any number of users, and to includea mapping of any combination of spatial data 502, temporal data 504,social data 506, and/or topical data 508. In an embodiment, step 1404 offlowchart 1400 may be performed by mapping module 1502 according to aflowchart 1600 shown in FIG. 16. FIG. 16 shows a flowchart 1600 formapping user data, according to an example embodiment of the presentinvention. Flowchart 1600 is described as follows.

In step 1602, user data is retrieved from the user information of eachof the first user and one or more further users, the user data includingone or more of spatial, temporal, social, or topical data associatedwith each user. As described above, user data 510, including spatialdata 502, temporal data 504, social data 506, and/or topical data 508may be obtained for first user 108 a, second user 108 b, and anyadditional users 108, from their respective user information 110. Userdata 510 (of user information 500) may be stored in and retrieved fromany suitable storage location, including centralized storage locatedlocal or remote to brand engine 104 (e.g., storage 318 shown in FIG. 3),storage accessed through social network engine 406 (e.g., social networkdatabase 410), or distributed storage (e.g., storage of user devices402).

In step 1604, the retrieved user data is graphed. For example, in anembodiment, mapping module 1502 may generate graph data for amulti-dimensional graph, having a number of dimensions dependent onspatial data 502, temporal data 504, social data 506, and/or topicaldata 508. For example, a four dimensional graph may be generated, withspatial data 502, temporal data 504, social data 506, and topical data508 being the respective axes of the graph. Furthermore, each user 108involved in the mapping may be a respective node in the graph, coveringa four dimensional space determined by the user's spatial data 502,temporal data 504, social data 506, and topical data 508. Anyintersections of spatial data 502, temporal data 504, social data 506,and/or topical data 508 in the graph for two or more users 108 mayindicate a corresponding spatial, temporal, social, and/or topicalrelationship between the users. An amount of the overlap may indicate atype and strength of the relationship. A lack of overlap in the graph inany one or more of spatial data 502, temporal data 504, social data 506,and/or topical data 508 may indicate a corresponding relationshipdistance between the users. Such relationships and/or distanceinformation may be used to determine modifications to brand profilesand/or to content. Description of the determination and analysis of suchrelationships is described as follows.

Referring back to flowchart 1400 in FIG. 14, in step 1406, a modifiedrepresentation of the second brand profile is generated based on themap. For example, in an embodiment, brand profile modifier module 1504may generate a modified representation of the second brand profile basedon the map generated in step 1404. As shown in FIG. 15, brand profilemodifier module 1504 receives map 1512, user information 110 a, and userinformation 110 b. Brand profile modifier module 1504 may optionallyreceive user information 110 c-110 x of further users 108 c-108 x. Brandprofile modifier module 1504 generates response 1510 (similar to brandprofile publication response signal 320 described above with respect toFIG. 3) based on map 1512 and the received user information. Response1510 includes a modified brand profile representation for brand profile112 b of second user 108 b, and may optionally include further data ofuser information 110 b (e.g., when displaying a complete user profilepage for user 108 b). Brand profile modifier module 1504 is coupled tobrand collection 106 by communication interface 116 to receive any brandobjects 204 to be transmitted in response 1510. Response 1510 istransmitted from brand profile modifier module 1504 to the requestinguser in social network 102 (e.g., first user 108 a).

Brand profile modifier module 1504 may generate the modified brandprofile representation to include a representation of any type andamount of modification to brand profile 112 b of second user 108 b.Example types of modifications include filtering of brand profile 112 b(e.g., removing one or more brand objects 204), sorting of brand profile112 b (e.g., reordering of brand objects 204 in brand profile 112 b),providing a recommendation for one or more brand objects 204, andmodifying one or more brand objects 204 of brand profile 112 b. Themodified brand profile representation may include any one of, or anycombination of these modification types. Examples of these types ofmodifications are described as follows with respect to FIGS. 17-21 inthe context of a mapping of two users, for ease of illustration. Infurther embodiments, these types of modifications can be performed inthe context of the mapping of any number of users, as would be known topersons skilled in the relevant art(s) from the teachings herein.

FIG. 17 shows an example of user information 110 a and user information110 b stored in social network database 410. User information 110 aincludes brand profile 112 a, and user information 110 b includes brandprofile 112 b. As shown in FIG. 17, brand profile 112 a includes brandobjects 204 a-204 e, and brand profile 112 b includes brand objects 204a, 204 c, 204 d, and 204 f-204 h. First user 108 a may have previouslyadded brand objects 204 a-204 e to brand profile 112 a asrepresentations of brands in which first user 108 a is interested, andsecond user 108 b may have previously added brand objects 204 a, 204 c,204 d, and 204 f-204 h to brand profile 112 b as representations ofbrands in which second user 108 b is interested. Typically, if firstuser 108 a displays brand profile 112 a (e.g., using one of user devices402 shown in FIG. 4), brand objects 204 a-204 e are displayed, and iffirst user 108 a displays brand profile 112 b of second user 108 b,brand objects 204 a, 204 c, 204 d, and 204 f-204 h are displayed.

In an embodiment of the present invention, if first user 108 a attemptsto display brand profile 112 b of second user 108 b (e.g., by attemptingto view the user profile page of second user 108 b), request 1508 isgenerated at the user device of first user 108 a. Request 1508 istransmitted from the user device. Request 1508 is received by mappingmodule 1502, which maps user information 110 a to user information 110 bas described above with respect to step 1404, and generates map 1512.Map 1512 may be used to determine relationships between users 108 a and108 b, which may be used to generate a modified representation of brandprofile 112 b of second user 108 b. Map 1512 is received by brandprofile modifier module 1504.

In an embodiment, brand profile modifier module 1504 may be configuredto filter brand profiles in step 1406 of flowchart 1400 based on map1512. Brand profile modifier module 1504 receives map 1512, whichincludes the mapping of user information 110 a to user information 110b, and generates a filtered representation of brand profile 112 b basedon map 1512. In the filtered representation of brand profile 112 b, oneor more of brand objects 204 a, 204 c, 204 d, and 204 f-204 h are notpresent. For instance, brand profile modifier module 1504 may beconfigured to filter out brand objects 204 that are not present in bothof brand profiles 112 a and 112 b shown in FIG. 17 (filter out topicaldata 508 that does not overlap). Brand profile modifier module 1504 maygenerate response 1510 to include common brand objects—brand objects 204a, 204 c, and 204 d.

For example, FIG. 18 shows a display 1802 of a user device of first user108 a, according to an embodiment of the present invention. In theexample of FIG. 18, first user 108 a interacts with a browser 1804 todisplay a brand profile of second user 108 b. In the current example,brand profile modifier module 1504 generated response 1510 to includecommon brand objects 204 a, 204 c, and 204 d. The user device of firstuser 108 a receives response 1510, and as a result, display 1802displays a modified brand profile 1806 that includes common brandobjects 204 a, 204 c, and 204 d (brand objects 204 f-204 h of brandprofile 112 b are filtered out), by showing brand object icons 622 a,622 c, and 622 d that represent common brand objects 204 a, 204 c, and204 d.

In another filtering example, brand profile modifier module 1504 may beconfigured to filter out brand objects 204 from brand profile 112 b thatare present in brand profile 112 a (filter out overlapping topical data508). For instance, in the current example, brand profile modifiermodule 1504 may generate response 1510 to include brand objects 204f-204 h, which are present in brand profile 112 b of second user 108 b,but are not present in brand profile 112 a of first user 108 a. As aresult, the display of the user device of first user 108 a may display amodified brand profile that includes brand objects 204 f-204 h. Brandprofile modifier module 1504 may be configured to perform further typesof filtering of brand profiles based on map 1512.

In one filtering example, as described above, relationship information514 of social data 506 (shown in FIG. 5) may list “friends” for firstuser 108 a. These friends may be categorized as “relatives,” “spouse,”“parents,” “children,” “cousins,” “best friends,” “boss,” “co-workers,”and/or any other suitable category. In an embodiment, brand profilemodifier module 1504 may be configured to filter brand profile 112 bbased on the relationship between user 108 a and user 108 b. Forexample, if second user 108 a is a child of first user 108 a, brandprofile modifier module 1504 may be configured to filter out brandobjects from brand profile 112 b that second user 108 a (child) may notwant first user 108 a (parent) to view, such as brand objects related toyouth-oriented entertainment brands (e.g., rock bands, rap artists,etc.). In the opposite case, if second user 108 a is a parent of firstuser 108 a, brand profile modifier module 1504 may be configured tofilter out brand objects from brand profile 112 b that second user 108 a(parent) may not want first user 108 a (child) to view, such as brandobjects related to more mature themed brands (e.g., movies havingviolence or other mature themes, alcoholic beverages, cigarettes, etc.).Brand profile modifier module 1504 may be configured to filter brandprofile 112 b based on any indicated relationship between first andsecond user 108 a and 108 b, including by age. Brand profile modifiermodule 1504 may also be configured to sort, recommend, or modify brandprofile 112 b based on a relationship between first and second user 108a and 108 b.

In a similar manner, brand profile modifier module 1504 may beconfigured to filter (and/or sort, recommend, or modify) brand profile112 b based on time of day (e.g., filtering out particular brand objectsin the morning, midday, and/or at night) and/or location of first user108 a.

In another embodiment, brand profile modifier module 1504 may beconfigured to sort brand objects in step 1406 of flowchart 1400 based onmap 1512. Brand profile modifier module 1504 receives map 1512, whichincludes the mapping of user information 110 a to user information 110b, and generates a sorted representation of brand profile 112 b based onmap 1512. In the sorted representation of brand profile 112 b, brandobjects 204 a, 204 c, 204 d, and 204 f-204 h may be sorted into adifferent order. For example, one of brand objects 204 a, 204 c, 204 d,and 204 f-204 h may be determined by analysis of map 1512 to be morerelevant to first user 108 a, and thus may be moved to be displayedfirst. For instance, the most relevant brand object may be brand object204 g. Brand object 204 g may be determined to be most relevant becauseit is indicated in map 1512 as most closely relating to brand objects204 a-204 e of first user 108 a (has a greatest overlap of spatial,temporal, social, and/or topical data 502-508 between first and secondusers 108 a and 108 b), because the most advertising revenue is receivedfrom display of brand object 204 g, and/or for any other reason. Asorted second brand object, third brand object, etc., may be selected ina similar manner for the sorted representation of brand profile 112 b.In the current example, brand profile modifier module 1504 may generateresponse 1510 to include the following sorted list of brand objects ofbrand profile 112 b—brand object 204 g, 204 c, 204 f, 204 a, 204 h, and204 d, ranked from greatest relevant to least relevance.

FIG. 19 shows display 1802 of the user device of first user 108 adisplaying sorted brand objects, according to an embodiment of thepresent invention. In the example of FIG. 19, first user 108 a interactswith browser 1804 to display a brand profile of second user 108 b. Inthe current example, brand profile modifier module 1504 generatedresponse 1510 to include sorted brand objects, in the order of brandobjects 204 g, 204 c, 204 f, 204 a, 204 h, and 204 d. The user device offirst user 108 a receives response 1510, and as a result, display 1802displays a modified brand profile 1906 that includes sorted brandobjects 204 g, 204 c, 204 f, 204 a, 204 h, and 204 d by showingassociated brand object icons 622 g, 622 c, 622 f, 622 a, 622 h, and 622d. Sorting may be particularly useful when brand profile 112 b of seconduser 108 b is very large, including being too large to display all brandobjects icons 622 at once, and thus important brand objects 204 can besorted to the beginning of the list to be more easily visible.

In another embodiment, brand profile modifier module 1504 may beconfigured to add/recommend brand objects in step 1406 of flowchart 1400based on map 1512. Brand profile modifier module 1504 receives map 1512,which includes the mapping of user information 110 a to user information110 b, and generates a representation of brand profile 112 b based onmap 1512 that includes a recommended brand object (e.g., that is notpresent in either of first and second brand profiles 112 a and 112 b).In a generated representation of brand profile 112 b, brand objects 204a, 204 c, 204 d, and 204 f-204 h may be present, as well as arecommended brand object 204 i. Brand object 204 i may be determined byanalysis of map 1512 to be relevant to first user 108 a, and thus addedas recommended brand object. Brand object 204 g may be recommended tofirst user 108 a for one or more reasons, including being representativeof a brand in a class of brands determined to be of interest to firstuser 108 a by analysis of map 1512, as being representative of a brandin a class of brands determined to be of interest to both of first andsecond users 108 a and 108 b by analysis of map 1512, and/or for anyother reason. Any number of recommended brand objects may be determined.In the current example, brand profile modifier module 1504 may generateresponse 1510 to include the brand objects 204 a, 204 c, 204 d, and 204f-204 h (of second profile 112 b) and recommended brand object 204 i.

FIG. 20 shows display 1802 of the user device of first user 108 adisplaying a recommended brand object, according to an embodiment of thepresent invention. In the example of FIG. 20, first user 108 a interactswith browser 1804 to display a brand profile of second user 108 b. Inthe current example, brand profile modifier module 1504 generatedresponse 1510 to include brand objects 204 a, 204 c, 204 d, and 204f-204 h and recommended brand object 204 i. The user device of firstuser 108 a receives response 1510, and as a result, display 1802displays a modified brand profile 2006 that includes brand objects 204a, 204 c, 204 d, and 204 f-204 h and recommended brand object 204 i, byshowing brand object icons 622 a, 622 c, 622 d, and 622 f-622 h andshowing brand object icon 622 i in a recommended brand object section2002 (which may be indicated in display 1802 by the text “recommendedbrands” and/or by other suitable text/image).

In another embodiment, brand profile modifier module 1504 may beconfigured to modify one or more brand objects in step 1406 of flowchart1400 based on map 1512. Brand profile modifier module 1504 receives map1512, which includes the mapping of user information 110 a to userinformation 110 b, and generates a representation of brand profile 112 bbased on map 1512 that includes a modified brand object. For example, ina generated representation of brand profile 112 b, brand objects 204 a,204 c, 204 d, and 204 f-204 h may be present. Brand object 204 c may bedetermined by analysis of map 1512 to be desired for modification forone or more reasons. For example, brand object 204 c may be modifiedbecause it is determined to be of heightened or decreased relevance tofirst user 108 a by analysis of map 1512 (e.g., due to co-occurrencewith other brand objects 204), because a change occurred in the brandrepresented by brand object 204 c, because brand object 204 c isdetermined to be of interest to both of first and second users 108 a and108 b by analysis of map 1512, and/or for any other reason. Any numberof brand objects may be modified. In the current example, brand profilemodifier module 1504 may generate response 1510 to include the brandobjects 204 a, 204 d, and 204 f-204 h (of second profile 112 b) and amodified version of brand object 204 c.

FIG. 21 shows display 1802 of the user device of first user 108 adisplaying a modified brand object, according to an embodiment of thepresent invention. In the example of FIG. 21, first user 108 a interactswith browser 1804 to display a brand profile of second user 108 b. Inthe current example, brand profile modifier module 1504 generatedresponse 1510 to include brand objects 204 a, 204 d, and 204 f-204 h anda modified version of brand object 204 c. The user device of first user108 a receives response 1510, and as a result, display 1802 displays amodified brand profile 2106 that includes brand objects 204 a, 204 d,and 204 f-204 h and a modified version of brand object 204 c, by showingbrand object icons 622 a, 622 d, and 622 f-622 h and showing modifiedbrand object icon 2102 c.

A brand object may be modified in any manner. For example, modifiedbrand object icon 2102 c can be modified (relative to brand object icon622 c) to have modified text and/or graphics. Modified brand object icon2102 c may have different text and/or one or more different imagesrelative to brand object icon 622 c, may be blinking, may be/have one ormore different colors, may be moving (e.g., vibrating, turning), have achanged size or be changing in size, may be emanating sound (e.g., anassociated sound file may be playing), may be showing video, and/or mayhave any other suitable visual and/or audio difference relative to brandobject 622 c. The modification may be intended to cause attention to bedrawn to modified brand object icon 2102 c, such as by using brightercolors, motion, etc., if brand object 204 c is determined to haveheightened relevance. Alternatively, the modification may be intended todraw less attention to modified brand object icon 2102 c, such as byusing muted colors, grayscale, etc., if brand object 204 c is determinedto have decreased relevance.

Thus, brand profile modifier module 1504 may modify brand profiles in avariety of ways. Such modifications are based upon map 1512, which mayinclude a mapping between user information of users 102 a and 102 b (asin the immediately preceding examples), or a mapping between userinformation of user 102 a and user information of a plurality of furtherusers (including user 102 b). Map 1512 may include a mapping of spatialdata 502, temporal data 504, social data 506, and/or topical data 508 ofusers, as described above.

In an embodiment, step 1406 of flowchart 1400 may be performed by brandprofile modifier module 1504 according to a flowchart 2200 shown in FIG.22. FIG. 22 shows a flowchart 2200 for generating a modified brandprofile, according to an example embodiment of the present invention.Flowchart 2200 is a continuation of flowchart 1600 described above withrespect to mapping module 1502. Flowchart 2200 is described as follows.

In step 2202, one or more relationships between brand profiles of thefirst user and the plurality of users are determined from the graph ofstep 1604. For example, in an embodiment, brand profile modifier module1504 may receive the graph data generated by mapping module 1502according to step 1604. As described above, the graph data may have anumber of dimensions dependent the included types of data, such asspatial data 502, temporal data 504, social data 506, and/or topicaldata 508). Brand profile modifier module 1504 may be configured todetermine one or more relationships between user information of usersfrom the graph. For example, brand profile modifier module 1504 maydetermine relationships in spatial data 502, temporal data 504, socialdata 506, and/or topical data 508 between the users. User data may beplotted in the graph for each user, such that each user is a node in thegraph, and the node has a multidimensional shape based on spatial data502, temporal data 504, social data 506, and/or topical data 508 of thecorresponding user. An amount of the overlap in the graph between usersmay indicate a type and strength of the relationship between users. Alack of overlap in the graph in any one or more of spatial data 502,temporal data 504, social data 506, and/or topical data 508 may indicatea corresponding relationship distance between users. Such relationshipsand/or distance information may be used to determine modifications tobrand profiles.

For example, relationships between brand objects 204 contained in thebrand profiles of the users may be determined from the graph. The graphmay indicate one or more brand objects 204 that co-occur in brandprofiles 112 of the users, brand objects 204 that occur in brand profile112 a of first user 108 a but do not occur in any or many brand profiles112 of the further users, and brand objects 204 that do not occur inbrand profile 112 a of first user 108 a but may occur in many (or all)brand profiles 112 b of the further users.

Furthermore, spatial data 502 of the graph may indicate a relationshipbetween brand objects 204 of the users. For example, with regard to theexample described above of the BMW™ brand object 204, brand profilemodifier module 1504 may determine from the graph that a spatialrelationship exists between first user 108 a and second user 108 b.First user 108 a passed by the BMW™ dealership, and brand profile 112 bof second user 108 b has the BMW™ brand object 204, which has associateddealership location information. Therefore, an overlap in spatial data502 between first user 108 a and second user 108 b exists with respectto the BMW™ brand object 204.

Likewise, temporal data 504 of the graph may indicate a relationshipbetween brand objects 204 of the users. For example, the graph mayindicate that two or more users were present at the same event, due tooverlapping temporal data 504 and spatial data 504 related to the event.With regard to the concert example, temporal data 504 (and spatial data502) of users 108 a and 108 b may indicate they both attended theconcert (e.g., first and second users 108 a and 108 b were at samelocation at same time). Thus, a relationship in spatial data 502 andtemporal data 504 between first user 108 a and second user 108 b existswith respect to the concert. Second user 108 b may have a concertrelated brand object 204 in user profile 112 b, such as a brand objectof a band, singer, or other entertainer (e.g., The Rolling Stones,Sting, etc.). Thus, an overlap in spatial data 502 and temporal data 504between first user 108 a and second user 108 b exists with respect tothe concert brand object 204.

With regard to the coffee shop example, spatial data 502 may indicatethat users 108 have been to the same location, while temporal data 504may indicate the users 108 were at the location at different times.Thus, an overlap in spatial data 502 but not in temporal data 504between first user 108 a and second user 108 b may exist with respect toa brand object 204 related to the coffee shop, indicating another typeof relationship with the coffee shop brand object 204 (e.g., a commonlocation to visit, but not a common event).

A graph generated by mapping module 1502 in step 1604 of flowchart 1600may be used to determine further relationships between users and brandprofiles in step 2202 of flowchart 2200. For example, the graph mayindicate adoption patterns of brand objects 204 across social network.When a new brand object 204 is introduced to social network, a firstuser in social network will add the new brand object 204 to their brandprofile 112 from brand collection 106 (shown in FIG. 1). Further userswill add the new brand object 204 from brand collection 106 or from thefirst user's brand profile 112. Even further users will add the newbrand object 204 from brand collection 106 or from brand profiles 112 ofprevious users to add the new brand object 204. In this manner, the newbrand object 204 may spread throughout social network 104. The graph maybe analyzed to determine this pattern of spread for the new brand object204. Users in social network 102 that are more important than otherusers in facilitating the spread of the new brand object 204 may bedetermined from this adoption pattern, from relationships betweentemporal data 504 (times that users obtained the new brand object 204)and social data 506 (the source users from which subsequent usersobtained the new brand object 204). Users in social network 102 thatenabled the most users in social network 102 to receive the new brandobject 204 may be considered key brand object facilitators orinfluencers. Such users may be key users in their respective friendnetworks in social network 102 for spreading information. If first user108 a is a key brand object influencer, brand profile modifier module1504 may be configured to recommend new brand objects to first user 108a to aid in facilitating their efficient and rapid spread throughoutusers in social network 102.

In step 2204, one or more probability scores corresponding to thedetermined one or more relationships are determined. For eachrelationship, a probability score may be determined. Such probabilityscores may be determined in any suitable manner. For example, aprobability score may be determined on a variety of relationshipfactors, including an amount of overlap of user data 510 (spatial data502, temporal data 504, social data 506, and/or topical data 508) forone or more users 108, the number of users 108 having any particularoverlap of user data 510, a distance between users 108 for user data 510that does not overlap (e.g., a spatial distance, a temporal distance, asocial distance, and/or a topical distance), etc.

For instance, as shown in FIG. 17, brand profile 112 a of first user 108a includes brand objects 204 a-204 e, and brand profile 112 b of seconduser 108 b includes brand objects 204 a, 204 c, 204 d, and 204 f-204 h.Brand profile modifier module 1504 may determine a relationship betweenusers that include brand objects 204 a-204 e in their brand profiles andusers that include brand object 204 f in their brand profiles (aco-occurrence relationship). The determined relationship may be used todetermine a probability score.

For instance, 78% of users (a relatively high correlation) mapped in map1512 that include all of brand objects 204 a-204 e in their brandprofiles may also include brand object 204 f in their brand profiles.Thus, there may be a high probability score (e.g., 78%) that user 108 amay be interested in brand object 204 f In another example, only 12% ofusers (a relatively low correlation) that include all of brand objects204 a-204 e in their brand profiles may also include brand object 204 gin their brand profiles. Thus, there may be a low probability score(e.g., 12%) that user 108 a may be interested in brand object 204 g.

In step 2206, the modified representation of the second brand profile isdetermined based on the one or more probability scores. The modifiedrepresentation of second brand profile 112 b (of second user 108 b) maybe determined as described above, to provide a filtered and/or sortedbrand profile, to provide a brand object recommendation, and/or toprovide a modified brand object.

For instance, in the case where 78% of users that include all of brandobjects 204 a-204 e in their brand profiles also include brand object204 f in their brand profiles, brand profile modifier module 1504 maygenerate a recommendation of brand object 204 f (e.g., FIG. 20) to user108 a. Furthermore, or alternatively, brand profile modifier module 1504may generate a modified brand profile that sorts brand object 204 f tobe located near the top or at the top of a brand object list (e.g., FIG.19). Furthermore, brand profile modifier module 1504 may generate amodified version of brand object 204 f to attract attention to brandobject 204 f (e.g., FIG. 21).

In the case where only 12% of users that include all of brand objects204 a-204 e in their brand profiles also include brand object 204 g intheir brand profiles, brand profile modifier module 1504 may generate amodified brand profile that filters out (does not display) brand object204 g. Alternatively, brand profile modifier module 1504 may generate amodified brand profile that sorts brand object 204 g to be located nearthe bottom, or at the bottom, of the list of displayed brand objects.Furthermore, brand profile modifier module 1504 may generate a modifiedversion of brand object 204 g that is configured to attract lessattention to brand object 204 g (e.g., FIG. 21) (e.g., the modifiedbrand object may have a duller color, may be turned to a grayscale orblack and white image, etc.).

Mapping module 1502 and brand profile modifier module 1504 may beimplemented in hardware, software, firmware, or any combination thereof.For example, mapping module 1502 and brand profile modifier module 1504may each be implemented in code configured to execute in one or moreprocessors.

Referring back to flowchart 1400 in FIG. 14, in step 1408, the modifiedrepresentation of second brand profile is transmitted for display. Asdescribed above, response 1510 may be generated by brand profilemodifier module 1514, which includes a modified version of second brandprofile 112 b. Response 1510 may be transmitted to the user device offirst user 108 a. FIGS. 18-21 show examples of display 1802 of the userdevice of first user 108 a displaying a modified brand profile (e.g.,modified brand profiles 1806, 1906, 2006, or 2106 of FIGS. 18-21) basedon receiving response 1510.

IV. Example Embodiments for Presenting Modified Content

Example embodiments are described in this section for enhancedpresentations of content associated with brands. For instance,embodiments are described for modifying the display of content based oncontext. The example embodiments described herein are provided forillustrative purposes, and are not limiting. Further structural andoperational embodiments, including modifications/alterations, willbecome apparent to persons skilled in the relevant art(s) from theteachings herein.

Online content may be displayed in connection with the display of brandprofiles. Such content may be advertisements, search results, news, orany other type of online content. For example, FIG. 23 shows a blockdiagram of a brand marketing and social network system 2300, accordingto an example embodiment of the present invention. Brand marketing andsocial network system 2300 is similar to system 100 shown in FIG. 1,with the addition of content engine 2302. Content engine 2302 enablescontent to be displayed by users 108 in social network.

For example, FIG. 24 shows a block diagram of content engine 2302,according to an example embodiment. As shown in FIG. 23, content engine2302 includes a search engine 2402, an advertising engine 2404, and anews engine 2406. In implementations, content engine 2302 may includeany one or more of search engine 2402, advertising engine 2404, newsengine 2406, and/or further content sources. Furthermore, although asingle content engine 2302 is shown in FIG. 23, any number of contentengines 2302, including any number of search engines 2402, advertisingengines 2404, and/or news engines 2406, may be accessible to socialnetwork 102.

Search engine 2302 is an information retrieval system used to locatedocuments and other information stored on a computer system. Searchengines are useful at reducing an amount of time required to findinformation. One well known type of search engine is a Web search enginewhich searches for documents, such as web pages, on the “World WideWeb.” Examples of search engine 2302 include Yahoo! Search™ (athttp://www.yahoo.com), Ask.com™ (at http://www.ask.com), and Google™ (athttp://www.google.com). To perform a search using search engine 2302, auser 108 enters a query in a user device. The query is transmitted tosearch engine 2302, and in response, search engine 2302 transmits searchresults to the user device for display to the user 108.

Advertising engine 2304 is a system that provides advertisements fordisplay by user devices of users 108. For example, when a user 108 viewsa website displayed by a user device, a request for one or moreadvertisements may be transmitted to advertising engine 2304 (e.g.,either directly from the user device or from the website). In response,advertising engine 2304 determines one or more advertisements, andtransmits the determined advertisements to the user device for displayto the user on a webpage of the website. Advertising engine 2304 maysupply any type of advertisement, including banner ads, floating ads,pop-up ads, video ads, etc.

News engine 2306 is a system that provides news-related content fordisplay by user devices of user 108. For example, when a user 108 viewsa new-related website displayed by a user device, a request for one ormore news articles may be transmitted to news engine 2306 (e.g., eitherdirectly from the user device or from the website). In response, newsengine 2306 determines the appropriate news articles, and transmits thedetermined news articles to the user device for display to the user on awebpage of the news-related website. News engine 2306 may supply anytype of news article, including U.S. news, world news, local news,sports news, entertainment news, financial news, etc. Examples of newsengine 2306 include Yahoo! (www.yahoo.com), MSNBC (www.msnbc.com), TheNew York Times (nytimes.com), etc.

As shown in FIG. 23, content engine 2302 is communicatively coupled tosocial network 102 by a communication interface 2304. Communicationinterface 2304 may include any type and/or combination of communicationlinks, including wired and/or wireless links, such as IEEE 802.11wireless LAN (WLAN) wireless links, Ethernet links, USB links, etc.Content engine 2302 may coupled to any configuration of social network102. For example, FIG. 25 shows a block diagram of a brand marketing andsocial network system 2500, according to an example embodiment of thepresent invention. As shown in FIG. 25, brand marketing and socialnetwork system 2500 is similar to system 400 shown in FIG. 4, with theaddition of content engine 2302. Content engine 2302 is communicativelycoupled to network 404 by communication interface 2302. Thus, contentengine 2302 may accessed by each of users devices 402, by social networkengine 406, and by brand engine 104. A user device of user devices 402may transmit a request for content through network 404 (and therespective communication links) to content engine 2302. In response,content engine 2302 selects content, and transmits the selected contentto the requesting user device of user devices 402.

The content received from content engine 2302 may be displayed by theuser device in connection with the display of brand profiles. Forexample, FIG. 26 shows a block diagram of display 1802 of the userdevice of first user, according to an embodiment of the presentinvention. In the example of FIG. 26, first user 108 a interacts withbrowser 1804 in a manner to display a brand profile 2602 of second user108 b. For instance, in the example of FIG. 26, first user 108 a hasrequested to view user profile page 600 b of second user 108 b.Furthermore, content is requested from content engine 2302 inconjunction with the display of brand profile 2602. For example, theuser may have submitted a search query to search engine 2402 or may haverequested news content from news engine 2406. Alternatively, a requestfor an advertisement may have been automatically transmitted toadvertising engine 2404 upon attempting to view user profile page 600 b,or other request for content, automatically or manually, may have beenprovided.

The content returned from content engine 2302 is displayed in a contentsection 2604 of profile page 600 b. Content section 2604 may bedisplayed in profile page 600 b in any location, including adjacent tobrand profile 2602 (as shown in FIG. 26), above brand profile 2602,below brand profile 2602, etc. Any amount of content may be returnedfrom content engine 2302 to be shown in content section 2604. Forinstance, in the example of FIG. 26, three items of content are shown incontent section 2604, first content item 2606 a, second content item2606 b, and third content item 2606 c. Content items 2606 may each be anadvertisement, a search result (e.g., a brief description of the searchresult and an associated link) in a list of search results, a newsarticle result (e.g., a brief description of the news article and anassociated link) in a list of news articles, or other type of content.

In an embodiment, the display of returned content is modified based oncontext. FIG. 27 shows a flowchart 2700 for providing content, accordingto an example embodiment of the present invention. In an embodiment,flowchart 2700 may be performed by brand engine 104. Further structuraland operational embodiments will be apparent to persons skilled in therelevant art(s) based on the discussion regarding flowchart 2700.Flowchart 2700 is described as follows.

Flowchart 2700 begins with step 1402. In step 1402, a request isreceived from a first user to display user information of a second user,the first user having associated user information that includes a firstbrand profile, and the user information of the second user including asecond brand profile. Step 1402 is described in detail above withrespect to flowchart 1400 of FIG. 14. This description of step 1402 isnot repeated here for purposes of brevity.

Step 1402 is illustrated with respect to FIG. 28. FIG. 28 shows a brandadvertising and social network system 2800, according to an exampleembodiment of the present invention. System 2800 illustratescommunications between a user device 2802, brand engine 104, and contentengine 2302 through network 404, as may be performed in systems 2300 and2500 described above with respect to FIGS. 23 and 25. As shown in FIG.28, a user (e.g., first user 108 a) interacts with user device 2802 togenerate a brand profile publication and content request 2806. Brandprofile publication and content request 2806 is a request from firstuser 108 a to view a brand profile of another user—second user 108 b—andincludes a request for content (e.g., generated automatically ormanually by user 108 a).

According to step 1402, brand engine 104 receives brand profilepublication and content request 2806. Brand engine 104 operates inaccordance with the brand profile publication request portion of brandprofile publication and content request 2806. For example, FIG. 29 showsa block diagram of a publication manager 2900, according to anembodiment of the present invention. Publication manager 2900 is similarto publication manager 1500 shown in FIG. 15, and described above, withthe addition of a content modifier module 2902. As shown in FIG. 29,mapping module 1502 of publication manager 2900 receives brand profilepublication and content request 2806, which includes the request fromfirst user 108 a to view the brand profile of second user 108 b.

In step 1404, the user information of the first user is mapped to atleast the user information of the second user. For example, as describedabove, mapping module 1502 of publication manager 2900 receives brandprofile publication and content request 2806. Mapping module 1502operates in accordance with the brand profile publication requestportion of brand profile publication and content request 2806, and thusoperates in a similar fashion as if brand profile publication request1508 (FIG. 15) is received. As described above, mapping module 1502generates a map of user information 110 a of first user 110 a and ofuser information 110 of one or more further users (e.g., of user 108 b,users 110 c-110 x, etc.). Mapping module 1502 may map any portion ofuser data 510, including any one or more of spatial data 502, temporaldata 504, social data 506 and topical data 508, for user 108 a and theadditional user(s) to generate map 1512. The mapping of step 1404 isdescribed in detail above, and is therefore not repeated here forpurposes of brevity.

In step 2302, a modified representation of content is generated based onthe map. As shown in FIG. 28, brand profile publication and contentrequest 2806 is received by content engine 2302. Content engine 2302operates in accordance with the content request portion of brand profilepublication and content request 2806. In response, content engine 2302selects content. The selected content may be in the form of a list ofsearch results, a list of advertisements, a list of news content, or anyother content results. The selected content is transmitted in a contentresults signal 2808 to brand engine 104.

As shown in FIG. 29, content results signal 2808 is received by contentmodifier module 2902. In an embodiment, content modifier module 2902generates a modified representation of the content received in contentresults signal 2808 based on the map generated in step 1404. As shown inFIG. 29, content modifier module 2902 receives map 1512. Contentmodifier module 2902 generates a modified content response 2810 based onmap 1512 and content results signal 2808. Response 2810 includes amodified content representation. Response 2810 is transmitted fromcontent modifier module 2902 to the requesting user in social network102 (e.g., first user 108 a at user device 2802 shown in FIG. 28).

Content modifier module 2902 may generate the modified contentrepresentation to include a representation of any type and amount ofmodification to the content received in content results signal 2808.Example types of modifications include filtering of content itemsreceived in content results signal 2808 (e.g., removing one or morecontent items), sorting of contents received in content results signal2808 (e.g., reordering of content items), providing a recommendation forone or more content items, and modifying one or more content items. Themodified content representation may include any one of, or anycombination of these modification types. Examples of these types ofmodifications are described as follows with respect to FIGS. 30-33 inthe context of a mapping of two users, for ease of illustration.

As described above, FIG. 17 shows an example of user information 110 aand user information 110 b stored in social network database 410. Userinformation 110 a includes brand profile 112 a, and user information 110b includes brand profile 112 b. As shown in FIG. 17, brand profile 112 aincludes brand objects 204 a-204 e, and brand profile 112 b includesbrand objects 204 a, 204 c, 204 d, and 204 f-204 h. As shown in FIG. 26,if first user 108 a displays brand profile 112 b of second user 108 b,brand objects 204 a, 204 c, 204 d, and 204 f-204 h are displayed, aswell as content section 2604 containing first-third content items 2606a-2606 c. First-third content items 2606 a-2606 c may be three contentitems returned by content engine 2302 (without modification). Note thatany number of content items may be returned by content engine 2302, andtherefore may be contained in content section 2604, including tens,hundreds, and even more content items.

In an embodiment of the present invention, if first user 108 a attemptsto display brand profile 112 b of second user 108 b (e.g., by attemptingto view the user profile page of second user 108 b), request 2806 isgenerated at user device 2802 of first user 108 a. Request 2806 istransmitted from user device 2802, and is received by content engine2302 and brand engine 104. Content engine 2302 generates content resultssignal 2808, which is received by content modifier module 2902 shown inFIG. 29. Request 2806 is received by mapping module 1502, which mapsuser information 110 a to user information 110 b as described above withrespect to step 1404, and generates map 1512. Map 1512 may be used todetermine relationships between users 108 a and 108 b, which may be usedby content modifier module 2902 to generate a modified representation ofthe content received in content results signal 2808. Map 1512 isreceived by content modifier module 2902.

In an embodiment, content modifier module 2902 may be configured tofilter content items received in content results signal 2808 in step2702 of flowchart 2700 based on map 1512. Content modifier module 2902receives map 1512, which includes the mapping of user information 110 ato user information 110 b, and generates a filtered representation ofthe content items received in content results signal 2808 based on map1512. In the filtered representation, one or more of content items 2606are not present. For instance, content modifier module 2902 may beconfigured to filter out content items 2606 that relate to brand objects204 that are not present in both of brand profiles 112 a and 112 b shownin FIG. 17 (filter out topical data 508 that does not overlap). Contentmodifier module 2902 may generate response 2810 to include content items2606 that relate to common brand objects—brand objects 204 a, 204 c, and204 d. For example, content items 2606 a and 2606 c may relate to one ormore of brand objects 204 a, 204 c, and 204 d. For instance, contentitems 2606 a and 2606 c may be search results, advertisements, newsarticles, etc., that relate to brand objects 204 a, 204 c, and 204 d.However, content item 2606 b may not relate to any of brand objects 204a, 204 c, and 204 d. Thus, content item 2606 b may be filtered out bycontent modifier module 2902.

For example, FIG. 30 shows display 1802 of user device 2802 of firstuser 108 a, according to an embodiment of the present invention. In theexample of FIG. 18, first user 108 a interacts with a browser 1804 todisplay a brand profile of second user 108 b. In the current example,content modifier module 2902 generated response 2810 to include contentitems 2606 a and 2606 c. User device 2802 of first user 108 a receivesresponse 2810, and as a result display 1802 displays a modified contentsection 3004 that includes content items 2606 a and 2606 c (content item2606 b is filtered out).

In another filtering example, content modifier module 2902 may beconfigured to filter out content items 2606 that relate to brand objects204 that are present in brand profile 112 a (filter out overlappingtopical data 508). For instance, in the current example, contentmodifier module 2902 may generate response 2810 to include content item2606 b, which relates to brand objects 204 f-204 h (which are present inbrand profile 112 b of second user 108 b, but are not present in brandprofile 112 a of first user 108 a). As a result, the display of the userdevice of first user 108 a may display a modified content section thatincludes content item 2606 b. Content modifier module 2902 may beconfigured to perform further types of filtering of content items basedon map 1512.

In one filtering example, as described above, relationship information514 of social data 506 (shown in FIG. 5) may list “friends” for firstuser 108 a. These friends may be categorized as “relatives,” “spouse,”“parents,” “children,” “cousins,” “best friends,” “boss,” “co-workers,”and/or any other suitable category. In an embodiment, content modifiermodule 2902 may be configured to filter content items received incontent results signal 2808 based on the relationship between user 108 aand user 108 b. For example, if second user 108 a is a child of firstuser 108 a, content modifier module 2902 may be configured to filter outcontent items that second user 108 a (child) may not want first user 108a (parent) to view, such as content items related to youth-orientedentertainment brands (e.g., rock bands, rap artists, etc.). In theopposite case, if second user 108 a is a parent of first user 108 a,content modifier module 2902 may be configured to filter out contentitems that second user 108 a (parent) may not want first user 108 a(child) to view, such as content items related to more mature themedbrands (e.g., movies having violence or other mature themes, alcoholicbeverages, cigarettes, etc.). Content modifier module 2902 may beconfigured to filter content items based on any indicated relationshipbetween first and second user 108 a and 108 b. In a similar manner,content modifier module 2902 may be configured to sort, recommend,and/or modify content items based on relationships (and/or based ontemporal data 504).

In another embodiment, content modifier module 2902 may be configured tosort content items in step 2702 of flowchart 2700 based on map 1512.Content modifier module 2902 receives map 1512, which includes themapping of user information 110 a to user information 110 b, andgenerates a sorted representation of content items 2606 received incontent results signal 2808 based on map 1512. In the sortedrepresentation, content items 2606 a-2606 c may be sorted into adifferent order. For example, one of content items 2606 a-2606 c may bedetermined by analysis of map 1512 to be more relevant to first user 108a, and thus may be moved to be displayed first. For instance, the mostrelevant brand object may be content item 2606 c. Content item 2606 cmay be determined to be most relevant because it is indicated in map1512 as most closely relating to brand objects 204 a-204 e of first user108 a (has a greatest overlap of spatial, temporal, social, and/ortopical data 502-508 between first and second users 108 a and 108 b),because the most advertising revenue is received from display of contentitem 2606 c, and/or for any other reason. A sorted second content item,third content item, etc., may be selected in a similar manner for thesorted representation of received content items. In the current example,content modifier module 2902 may generate response 2810 to include thefollowing sorted list of content items—content item 2606 c, content item2606 a, and 2606 b, ranked from greatest relevant to least relevance.

FIG. 31 shows display 1802 of the user device of first user 108 adisplaying sorted content items, according to an embodiment of thepresent invention. In the example of FIG. 31, first user 108 a interactswith browser 1804 to display a brand profile of second user 108 b. Inthe current example, content modifier module 2902 generated response2810 to include sorted content items, in the order of content items 2606c, 2606 a, and 2606 b. The user device of first user 108 a receivesresponse 2810, and as a result, display 1802 displays a modified contentsection 3104 that includes sorted content items 2606 c, 2606 a, and 2606b. Sorting may be particularly useful when the number of content items2606 is very large, including being too large to display all contentitems 2606 at once, and thus important content items 2606 can be sortedto the beginning of the list to be more easily visible.

In another embodiment, content modifier module 2902 may be configured toadd/recommend content items in step 2702 of flowchart 2700 based on map1512. Content modifier module 2902 receives map 1512, which includes themapping of user information 110 a to user information 110 b, andgenerates a representation of content items 2606 received in contentresults signal 2808 based on map 1512 that includes a recommendedcontent item. In a generated representation of content items, contentitems 2606 a-2606 c may be present, as well as a recommended contentitem. The recommended content item may be determined by analysis of map1512 to be relevant to first user 108 a, and thus added as recommendedcontent item. In an embodiment, the recommended content item is not be aresult of the content selection performed by content engine 2302 due torequest 2806 from user 108 a, but may be additional content selected bycontent engine 2302. For example, brand engine 104 may be configured totransmit a content request to content engine 2302 based on arelationship indicated in map 1512. The content returned by contentengine 2302 in response to the request may be provided as a recommendedcontent item. Any number of recommended content items may be determined.In the current example, content modifier module 2902 may generateresponse 2810 to include the content items 2606 a-2606 c and arecommended content item 3206.

FIG. 32 shows display 1802 of the user device of first user 108 adisplaying a recommended content item, according to an embodiment of thepresent invention. In the example of FIG. 32, first user 108 a interactswith browser 1804 to display a brand profile of second user 108 b. Inthe current example, content modifier module 2902 generated response2810 to include content items 2606 a-2606 c and recommended content item3206. User device 2802 of first user 108 a receives response 2810, andas a result, display 1802 displays a modified content section 3204 thatincludes content items 2606 a-2606 c and recommended content item 3206in a recommended content section 3202 (which may be indicated in display1802 by the text “recommended content” or by other suitable text/image).

In another embodiment, content modifier module 2902 may be configured tomodify one or more content items in step 2702 of flowchart 2700 based onmap 1512. Content modifier module 2902 receives map 1512, which includesthe mapping of user information 110 a to user information 110 b, andgenerates a representation of content items 2606 received in contentresults signal 2808 based on map 1512 that includes a modified contentitem. For example, in a generated representation of content items,content items 2606 a-2606 c may be present. Content item 2606 b may bedetermined by analysis of map 1512 to be desired for modification forone or more reasons. For example, content item 2606 b may be modifiedbecause it is determined to be of heightened or decreased relevance tofirst user 108 a by analysis of map 1512 (e.g., due to a relationshipwith other brand objects 204), because content item 2606 b is related tobrand objects determined to be of interest to both of first and secondusers 108 a and 108 b by analysis of map 1512, and/or for any otherreason. Any number of content items may be modified. In the currentexample, content modifier module 2902 may generate response 2810 toinclude the content items 2606 a and 2606 c and a modified version ofcontent item 2606 b.

FIG. 33 shows display 1802 of the user device of first user 108 adisplaying a modified content item, according to an embodiment of thepresent invention. In the example of FIG. 33, first user 108 a interactswith browser 1804 to display a brand profile of second user 108 b. Inthe current example, content modifier module 2902 generated response2810 to include content items 2606 a and 2606 c, and a modified versionof content item 2606 b. The user device of first user 108 a receivesresponse 2810, and display 1802 displays a modified content section 3304that includes content items 2606 a and 2606 c, and shows a modifiedversion of content item 2606 b as modified content item 3302 b.

A content item may be modified in any manner. For example, modifiedcontent item 3302 b can be modified (relative to other content items2606) to have modified text and/or graphics. Modified content item 3302b may have different text and/or one or more different images relativeto content items 2606, may be blinking, may have one or more differentcolors, etc. The modification may be intended to cause attention to bedrawn to modified content item 3302 b, such as by using brighter colors,motion, etc., if content item 2606 b is determined to have heightenedrelevance. Alternatively, the modification may be intended to draw lessattention to modified content item 3302 b, such as by using mutedcolors, grayscale, etc., if content item 2606 b is determined to havedecreased relevance.

Thus, content modifier module 2902 may modify display of content itemsin a variety of ways. Such modifications are based upon map 1512, whichmay include a mapping between user information of users 102 a and 102 b(as in the immediately preceding examples), or a mapping between userinformation of user 102 a and user information of a plurality of furtherusers (including user 102 b). Map 1512 may include a mapping of spatialdata 502, temporal data 504, social data 506, and/or topical data 508 ofusers, as described above.

In an embodiment, step 2702 of flowchart 2700 may be performed bycontent modifier module 2902 according to a flowchart 3400 shown in FIG.34. FIG. 34 shows a flowchart 3400 for generating modified content,according to an example embodiment of the present invention. Flowchart3400 is a continuation of flowchart 1600 described above with respect tomapping module 1502. Flowchart 3400 is described as follows.

In step 2202, one or more relationships between brand profiles of thefirst user and the plurality of users are determined from the graph ofstep 1604. In step 2204, one or more probability scores corresponding tothe determined one or more relationships are determined. Steps 2202 and2204 are described in detail further above, and thus are not describedagain for purposes of brevity.

In step 3402, the modified representation of the content is determinedbased on the one or more probability scores. The modified representationof content items 2606 received in content results signal 2808 may bedetermined based on the one or more probability scores determined instep 2204, to provide a filtered and/or sorted list of content items, toprovide a content item recommendation, and/or to provide a modifiedcontent item.

For instance, in the case where 78% of users that include all of brandobjects 204 a-204 e in their brand profiles also include brand object204 f in their brand profiles, content modifier module 2902 may generatea recommendation (e.g., FIG. 32) of a content item related to brandobject 204 f to user 108 a. For example, if brand object 204 f isassociated with Lindsay Lohan, content modifier module 2902 mayrecommend a news article content item in the returned content thatmentions “Lindsay Lohan.” If brand object 204 f is associated with AppleComputer, content modifier module 2902 may provide an iPhoneadvertisement content item as a recommendation. Furthermore, oralternatively, content modifier module 2902 may generate a modifiedbrand profile that sorts a content item related to brand object 204 f tobe located near the top or at the top of a content item list (e.g., FIG.31). Furthermore, content modifier module 2902 may generate a modifiedversion of a content item related to brand object 204 f to attractattention to the content item (e.g., FIG. 33).

In the case where only 12% of users that include all of brand objects204 a-204 e in their brand profiles also include brand object 204 g intheir brand profiles, content modifier module 2902 may generate amodified content section that filters out (does not display) a contentitem related to brand object 204 g. Furthermore, or alternatively,content modifier module 2902 may generate a modified content sectionthat sorts a content item related to brand object 204 g to be locatednear the bottom, or at the bottom, of the list of displayed contentitems. Furthermore, content modifier module 2902 may generate a modifiedversion of a content item related to brand object 204 g that isconfigured to attract less attention to the content item (e.g., FIG. 32)(e.g., the modified content item may have a duller color, may be turnedto a grayscale or black and white image, etc.).

Content modifier module 2902 may be implemented in hardware, software,firmware, or any combination thereof. For example, content modifiermodule 2902 may each be implemented in code configured to execute in oneor more processors.

Referring back to flowchart 2700 in FIG. 27, in step 2704, the modifiedrepresentation of the content is transmitted for display. As describedabove, a modified content response 2810, which includes the generatedmodified version of the content received in content results signal 2808,is generated by content modifier module 2902. As shown in FIG. 28,modified content response 2810 is transmitted from brand engine 104,through network 404, to user device 2802 of first user 108 a. FIGS.30-33 show examples of display 1802 of a user device of first user 108 adisplaying the modified content received in modified content response2810 (e.g., modified content sections 3004, 3104, 3204, or 3304 of FIGS.30-33).

V. Example Computer Implementation

The embodiments described herein, including systems, methods/processes,and/or apparatuses, may be implemented using well knownservers/computers, such as computer 3500 shown in FIG. 35. For example,brand engine 104 of FIGS. 1, 4, 23, 25, and 28, brand engine 300 of FIG.3, social network engine 406 of FIGS. 4 and 25, flowchart 1400 of FIG.14, publication manager 1500 of FIG. 15, flowchart 1600 of FIG. 16,flowchart 2200 of FIG. 22, content engine 2302 of FIGS. 23-25 and 28,flowchart 2700 of FIG. 27, publication manager 2900 of FIG. 29, andflowchart 3400 of FIG. 34 can each be implemented using one or morecomputers 3500.

Computer 3500 can be any commercially available and well known computercapable of performing the functions described herein, such as computersavailable from International Business Machines, Apple, Sun, HP, Dell,Cray, etc. Computer 3500 may be any type of computer, including adesktop computer, a server, etc.

Computer 3500 includes one or more processors (also called centralprocessing units, or CPUs), such as a processor 3504. Processor 3504 isconnected to a communication infrastructure 3502, such as acommunication bus. In some embodiments, processor 3504 cansimultaneously operate multiple computing threads.

Computer 3500 also includes a primary or main memory 3506, such asrandom access memory (RAM). Main memory 3506 has stored therein controllogic 3528A (computer software), and data.

Computer 3500 also includes one or more secondary storage devices 3510.Secondary storage devices 3510 include, for example, a hard disk drive3512 and/or a removable storage device or drive 3514, as well as othertypes of storage devices, such as memory cards and memory sticks. Forinstance, computer 3500 may include an industry standard interface, sucha universal serial bus (USB) interface for interfacing with devices suchas a memory stick. Removable storage drive 3514 represents a floppy diskdrive, a magnetic tape drive, a compact disk drive, an optical storagedevice, tape backup, etc.

Removable storage drive 3514 interacts with a removable storage unit3516. Removable storage unit 3516 includes a computer useable orreadable storage medium 3524 having stored therein computer software3528B (control logic) and/or data. Removable storage unit 3516represents a floppy disk, magnetic tape, compact disk, DVD, opticalstorage disk, or any other computer data storage device. Removablestorage drive 3514 reads from and/or writes to removable storage unit3516 in a well known manner.

Computer 3500 also includes input/output/display devices 3522, such asmonitors, keyboards, pointing devices, etc.

Computer 3500 further includes a communication or network interface3518. Communication interface 3518 enables the computer 3500 tocommunicate with remote devices. For example, communication interface3518 allows computer 3500 to communicate over communication networks ormediums 3542 (representing a form of a computer useable or readablemedium), such as LANs, WANs, the Internet, etc. Network interface 3518may interface with remote sites or networks via wired or wirelessconnections.

Control logic 3528C may be transmitted to and from computer 3500 via thecommunication medium 3542.

Any apparatus or manufacture comprising a computer useable or readablemedium having control logic (software) stored therein is referred toherein as a computer program product or program storage device. Thisincludes, but is not limited to, computer 3500, main memory 3506,secondary storage devices 3510, and removable storage unit 3516. Suchcomputer program products, having control logic stored therein that,when executed by one or more data processing devices, cause such dataprocessing devices to operate as described herein, represent embodimentsof the invention.

The invention can work with software, hardware, and/or operating systemimplementations other than those described herein. Any software,hardware, and operating system implementations suitable for performingthe functions described herein can be used.

CONCLUSION

While various embodiments of the present invention have been describedabove, it should be understood that they have been presented by way ofexample only, and not limitation. It will be apparent to persons skilledin the relevant art that various changes in form and detail can be madetherein without departing from the spirit and scope of the invention.Thus, the breadth and scope of the present invention should not belimited by any of the above-described exemplary embodiments, but shouldbe defined only in accordance with the following claims and theirequivalents.

What is claimed is:
 1. A method of providing content, comprising:receiving, by a computing device, a request from a user device operatedby a first user to display user information of a second user in a socialnetwork that enables the first user and the second user to interact withbrands of interest, the first user having associated user informationthat includes a first brand profile, the first brand profile including afirst plurality of brand objects selected by the first user based on aninterest of the first user in brands that the first plurality of brandobjects represent, and the user information of the second user includinga second brand profile that includes a second plurality of brand objectsselected by the second user based on an interest of the second user inbrands that the second plurality of brand objects represent, each brandobject including at least an image that is representative of acorresponding brand; mapping, by the computing device, the userinformation of the first user to at least the user information of thesecond user in a map; generating, by the computing device, a modifiedrepresentation of received content based upon said mapping, the modifiedrepresentation comprising a filtering of a brand profile selected from agroup of brand profiles comprising the first brand profile and thesecond brand profile, the filtering based on a relationship between acategory in the social network for the first user and the second user,the relationship obtained from the social network; and transmitting, bythe computing device, the modified representation to the user device toenable display of the modified representation by the user device.
 2. Themethod of claim 1, wherein said mapping the user information of thefirst user to at least the user information of the second usercomprises: mapping the user information of the first user to userinformation of a plurality of users.
 3. The method of claim 2, whereinsaid mapping the user information of the first user to user informationof a plurality of users comprises: retrieving user data from the userinformation of each of the first user and the plurality of users, theuser data including one or more of spatial, temporal, social, or topicaldata associated with each user; and graphing the retrieved user data. 4.The method of claim 3, wherein said generating a modified representationof the received content based on said mapping comprises: determining oneor more relationships between brand profiles of the first user and theplurality of users from said graphing; generating one or moreprobability scores corresponding to the determined one or morerelationships; and determining the modified representation of thecontent based on the one or more probability scores.
 5. The method ofclaim 1, wherein said generating a modified representation of thereceived content based on said mapping comprises: selecting a contentitem from the received content based at least on said mapping; andwherein said transmitting comprises transmitting the selected contentitem to the user device to enable the selected content item to bedisplayed as recommended content.
 6. The method of claim 1, wherein thereceived content includes a plurality of content items, wherein saidgenerating a modified representation of the received content based onsaid mapping comprises: modifying a content item of the plurality ofcontent items based on said mapping; and wherein said transmittingcomprises transmitting the modified content item to the user device toenable the modified content item to be displayed.
 7. The method of claim1, wherein the received content includes a plurality of content items,wherein said generating a modified representation of the receivedcontent based on said mapping comprises: filtering the plurality ofcontent items based on the mapping so that fewer than all of the contentitems received in the plurality of content items is included in themodified representation of the received content; and wherein saidtransmitting comprises transmitting the filtered plurality of contentitems to the user device to enable the filtered plurality of contentitems to be displayed.
 8. The method of claim 1, wherein the receivedcontent includes a plurality of content items, wherein said generating amodified representation of the content based on said mapping comprises:sorting the plurality of content items based on said mapping; andwherein said transmitting comprises transmitting the sorted plurality ofcontent items to the user device to enable the sorted plurality ofcontent items to be displayed.
 9. The method of claim 1, furthercomprising: transmitting a representation of the second brand profile tothe user device to enable display of the representation of the secondbrand profile proximate to the display of the modified representation ofthe content by the user device.
 10. The method of claim 1, furthercomprising: receiving the content from a content engine.
 11. A brandengine, comprising: a mapping module executed by a processor andconfigured to receive a request from a user device operated by a firstuser to display user information of a second user in a social networkthat enables the first user and the second user to interact with brandsof interest, the first user having associated user information thatincludes a first brand profile, the first brand profile including afirst plurality of brand objects selected by the first user based on aninterest of the first user in brands that the first plurality if brandobjects represent, and the user information of the second user includinga second brand profile that includes a second plurality of brand objectsselected by the second user based on an interest of the second user inbrands that the second plurality of brand objects represent, each brandobject including at least an image that is representative of acorresponding brand, wherein the mapping module is configured to map theuser information of the first user to at least the user information ofthe second user to generate a map; and a content modifier moduleexecuted by the processor and configured to generate a modifiedrepresentation of received content based at least on the generated map,the modified representation comprising a filtering of a brand profileselected from a group of brand profiles comprising the first brandprofile and the second brand profile, the filtering based on arelationship between a category in the social network for the first userand the second user, the relationship obtained from the social network;wherein the brand engine is configured to transmit the modifiedrepresentation of the received content to the user device to enable themodified representation of the received content to be displayed by theuser device.
 12. The brand engine of claim 11, wherein the mappingmodule is configured to map the user information of the first user touser information of a plurality of users.
 13. The brand engine of claim12, wherein the mapping module is configured to access storage toretrieve user data from the user information of each of the first userand the plurality of users, the user data including one or more ofspatial, temporal, social, or topical data associated with each user;and wherein the mapping module is configured to generate graph data fora graph of the retrieved user data.
 14. The brand engine of claim 13,wherein the content modifier module is configured to determine one ormore relationships between brand profiles of the first user and theplurality of users from the generated graph data; wherein the contentmodifier module is configured to generate one or more probability scorescorresponding to the determined one or more relationships; and whereinthe content modifier module is configured to determine the modifiedrepresentation of the received content based on the one or moreprobability scores.
 15. The brand engine of claim 11, wherein thecontent modifier module is configured to select a content item from thereceived content based at least on the generated map; and wherein thebrand engine is configured to transmit the selected content item to theuser device to enable the selected content item to be displayed as abrand recommendation.
 16. The brand engine of claim 11, wherein thecontent modifier module is configured to modify a content item of thereceived content based on the generated map; and wherein the brandengine is configured to transmit the modified content item to the userdevice to enable the modified content item to be displayed.
 17. Thebrand engine of claim 11, wherein the received content includes aplurality of content items, wherein the content modifier module isconfigured to filter the plurality of content items based on thegenerated map so that fewer than all of the content items in theplurality of content items is included in the modified representation ofthe received content; and \ wherein the brand engine is configured totransmit the filtered plurality of content items to the user device toenable the filtered plurality of content items to be displayed.
 18. Thebrand engine of claim 11, wherein the received content includes aplurality of content items, wherein the content modifier module isconfigured to sort the plurality of content items based on the generatedmap; and wherein the brand engine is configured to transmit the sortedplurality of content items to the user device to enable the sortedplurality of content items to be displayed.
 19. The brand engine ofclaim 11, further comprising: a commerce manager configured to enablerevenue to be generated based on display of the modified representationof the received content.
 20. A system, comprising: a brand objectmanager configured to generate a brand collection that containsinformation of one or more brands represented as brand objects; anassociation manager configured to enable associations to be formedbetween one or more users and one or more brand objects from the brandcollection; and a publication manager, at least partially implemented inhardware, configured to manage publication of a brand profile thatincludes the one or more brand objects, the publication managercomprising a mapping module configured to map user information of afirst user to at least user information of a second user and generate amap that indicates one or more overlaps in the user information of thefirst user and the user information of the second user; and a contentmodifier configured to generate a modified representation of contentreceived based at least on the generated map, the modifiedrepresentation comprising a filtering of a brand profile selected from agroup of brand profiles comprising a first brand profile including afirst plurality of brand objects selected by the first user based on aninterest of the first user in brands that the first plurality of brandobjects represent, and a second brand profile that includes a secondplurality of brand objects selected by the second user based on aninterest of the second user in brands that the second plurality of brandobjects represent, the filtering based on a relationship between acategory in the social network for the first user and the second user,the relationship obtained from the social network.